cmd Fenster auslesen

  • Mein Programm gibt die XXX.mid Datei und die Device ID per hand ein, aber es wirkt unprofessionell wenn sich da ein cmd fenster öffnet und alles eingegeben wird. Daher wollte ich fragen ob man die vorvorletzte Zeile dieses CMD-Fensters "Activation code (One/Go): 62G3X N2GHB SRJW8", dort diesen Part zu kopieren : 62G3X N2GHB SRJW8 Wie kann ich da anfangen? :>

  • Wenn du es mit StdoutRead ausgelesen hast, dann solltest du den kompletten Text haben (unten $String genannt).
    Zum Filtern hab ich folgende Funktion geschrieben:

    Spoiler anzeigen
    [autoit]

    $String = "Microsoft Windows XP [Version 5.1.2600]"& _
    @CRLF&"(C) Copyright 1985-2001 Microsoft Corp."& _
    @CRLF&""& _
    @CRLF&"C:\Dokumente und Einstellungen\BENUTZERNAME\Eigene Dateien\Tomtom\Tomtom Aktivator>Key.ex"& _
    @CRLF&"e Western_and_Central_Europe.mid"& _
    @CRLF&"'Primary' map"& _
    @CRLF&"Enter Device ID:GTHSA ASDFA"& _
    @CRLF&"Activation code (Palm/Pocket): H48C3 B6UMA MS8W2"& _
    @CRLF&"Activation code (One/Go): 62G3X N2GHB SRJW8"& _
    @CRLF&""& _
    @CRLF&"C:\Dokumente und Einstellungen\BENUTZERNAME\Eigene Dateien\Tomtom\TomTom>"
    $Activationcode1 = StringRegExp($String,"\(Palm/Pocket\):\s+([0-9A-Z]+)\s([0-9A-Z]+)\s([0-9A-Z]+)",3)
    $Code1 = $Activationcode1[0]&" "&$Activationcode1[1]&" "&$Activationcode1[2]
    $Activationcode2 = StringRegExp($String,"\(One/Go\):\s+([0-9A-Z]+)\s([0-9A-Z]+)\s([0-9A-Z]+)",3)
    $Code2 = $Activationcode2[0]&" "&$Activationcode2[1]&" "&$Activationcode2[2]

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(0,"Ausgelesener Text via CMD",$String)
    MsgBox(0,"Herausgefilterter Activation code: Palm/Pocket",$Code1)
    MsgBox(0,"Herausgefilterter Activation code: One/Go",$Code2)

    [/autoit]

    PS: Falls du nicht genau weißt wie StdoutRead funktioniert, dann guck in die Hilfe oder in den Link von AutoBert ;)

    Wer immer nur das tut, was er bereits kann - wird auch immer nur das bleiben, was er bereits ist!

  • Puh das Problem ist aber dass der Username je nach User natürlich anders ist, genauso die Device ID und auch die ausgegebenen Codes. Und das CMD kann auch ne andere version haben :/

    Gibts noch möglichkeiten?