Korrektes verwenden von Variablen

  • Hey,

    Ich bin ziehmlicher anfänger in sachen programmierung. Das einzige was ich mal gemacht hab ist ein bischen mit basic rumgespielt um eine Mikrocontroller wie C-Control oder Atmel Atmega16 zu programmieren. Ich interessiere mich sehr für die software programmierung. Leider kann ich mit dem wiki-tutorial nicht viel anfangen da es dort noch zu viele begriffe gibt die mir nix sagen. Um aber mal zu meinem anfangs projekt zu kommen: Ich hab bis jetzt nur ein kleines script geschrieben was die MS-DOS oberfläche von windows xp aufruft und dann den befehl " ipconfig /all " einträgt und enter drückt. Das sieht so aus:

    run ( "C:\WINDOWS\system32\cmd.exe")
    WinWaitActive ( "C:\WINDOWS\system32\cmd.exe" )
    send ( "ipconfig /all" )
    send ("{ENTER}")

    das funktioniert auch soweit.

    ABER:

    jetzt möchte ich die ip-adresse die in dem fenster steht, amliebsten in eine variable einfügen und später in einer messagebox ausgeben.

    leider finde ich keinen befehl der es mir erlaubt diese zeile aus dem fenster in eine variable ein zu fügen. Bitte an dieser stelle um hilfe. Oder um vorschläge wie man es besser machen könnte? Macht man sowas überhaupt mit einer variablen?

    danke schonmal im Vorraus

    mfg D®iv3r

  • Vielen dank für die zügige antwort!!!! ^^

    einfach nur mal so als frage: geht das auch so wie ich das machen wollte? weil ich hab da zum beispiel nich nur den befehl ipconfig... ich hab noch andere befehle von denen ich die informationen gerne in einer message box ausgegeben hätte( zum beispie netstat-a welches mir die aktuellen verbindungen anzeigt etc.)

    Danke trozdem für die möglichkeit mit nur EINEM befehl ^^ !!!


    mfg D®iv3r

  • hehe... ich hab die suche benutzt... auch bei google hab ich geguckt... nur die suche hat mir das selbe gegeben wie du mir gerade gegeben hast... und mit dem was du geschrieben hast kann ich nich viel anfangen weil ich leidder nicht verfolgen kann was das programm tut :S und mit dem ipconfig dateien arbeite ich ja garnicht... meine frage wa im grunde nur ob ich mir informationen aus dem DOS fenster holen kann ?? ^^wenn nicht muss ich mir andere möglichkeiten überlegen wie ich die infos bekomme die bei den befehlen wie " ipconfig oder netstat " erscheinen. Das is nämlich so ne art aufgabe die ich von meinem vater bekommen habe... so ne art herausforderung... ^^

    danke trozdem für deine schnelle hilfe!!!


    mfg D®iv3r

    • Offizieller Beitrag

    Hi,

    das geht alles. Am besten wäre, wenn du mal beschreibst was du wirklich machen willst (wenn es fertig ist)

    Spoiler anzeigen
    [autoit]

    #include
    Global $text
    Global $command = "set"

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

    $stream = Run(@ComSpec & ' /c ' & $command, '', @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)

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

    While 1
    $textline = StdoutRead($stream)
    $text &= @CRLF & $textline
    If @error Then ExitLoop
    WEnd

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

    MsgBox(0, "STDOUT read:", $text)

    [/autoit]

    So long,

    Mega
    </Constants.au3>

  • hi,

    dass das geht find ich super ^^ ... was es später machen soll? Folgendes: mein momentanes script was ich gemacht habe öffnet bis jetzt einfach nur die eingabeaufforderung ( MS-DOS ) und trägt einen befehl ein und drückt dann enter. Das funktioniert auch alles... aber... jetzt möchte ich gerne aus dem noch geöffneten fenster der eingabeaufforderung die information entnehmen und dies später in einer messagebox ausgeben. Dabei hatte ich mir gedacht diese information in eine variable zu schreiben und diese variable später bei dem aufruf der messagebox einfach aus zu lesen. das einzige was ich nicht weiss wie ich es machen soll ist : wie sage ich dem script das es einem fenster informationen entnimmt? das bekomme ich nicht hin. Hab das auch noch in keinem post gesehen oder in einem tutorial ein beispiel dafür gefunden! wäre sehr nett wenn mir das jemand erklären könnte... wie man überhaupt im allgemein eine variable mit informationen bestückt ^^ ... bin wie gesagt noch absoluter anfänger.. hehe

    mein momentanes script:

    Spoiler anzeigen

    run ( "C:\WINDOWS\system32\cmd.exe")
    WinWaitActive ( "C:\WINDOWS\system32\cmd.exe" )
    send ( "ipconfig /all" )
    send ("{ENTER}")


    danke an alle die mir helfen !!! ^^

    Mfg D®iv3r

  • Ich hab den source eben mal kopiert und versucht an zu wenden... wenn ich das script dann starten will gibt er mir eine fehlermeldung " Error: Cannot parse #include"... es wäre auch sehr nett wenn du mir ein paar kommentare einbringen könntest damit ich verfolgen kann was da schritt für schritt passiert... mich interessiert es nämlich sehr ^^ ...


    Mfg D®iv3r