Eine weitere .EXE Datei ausführen mit Parametern...

  • Hallo Freunde,

    habe jetzt schon einige Sachen mit AutoIt umgesezt um eine Siemens S7 SPS über das Visualisierungs Programm für Windows in eine normale Bussteuerung zu integrieren und es funzt super. Ich starte jetzt innerhalb eines AutIt-Scrpits folgende EXE:

    [autoit]

    RunWait(@ScriptDir & "\ExecStudioCo.exe" & ' "SDatumTimer1= "' & $Timer1Datum & ' "SNameTimer1= "' & $Timer1Name & ' "SStartTimer1= "' & $Timer1Anfang & ' "SEndeTimer1= "' & $Timer1Ende & '"' )

    [/autoit]

    Der String so funktioniert so einwandfrei. Würde jetzt aber gerne mit: @SW_HIDE oder @SW_MINIMIZE die hochpoppende DOS-Box steuern. Probiere es jetzt jetzt schon ziemlich lange aber iregndwie habe ich keinen Erfolg oder ich sehe den Wald vor lauter Bäumen nicht mehr. ;(
    Könnt Ihr mir helfen??????

    Viele Grüße
    Marcus

    Einmal editiert, zuletzt von Brind (12. Juni 2010 um 16:45)

  • Du kannst doch, wenn der Fenstername der Exe die du so startest immer gleich ist den Zustand dieses Fester über dein eig. Programm mit WinSetState ( "title", "text", flag ) setzten.
    und einfach einen Parameter wie SHow oder Hide an eine andere Applikation zu übergeben bringt recht wenig, wenn sie nicht darauf Programmiert wurde, diese zu erhalten

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • Hallo Leute,


    habe es bisher leider nicht geschaftt, ich glaube ich bin einfach zu dumm dafür. ;)


    Grüße

    Marcus

  • hast es mal so probiert:

    [autoit]

    RunWait(@ScriptDir & "\ExecStudioCo.exe" & ' "SDatumTimer1= "' & $Timer1Datum & ' "SNameTimer1= "' & $Timer1Name & ' "SStartTimer1= "' & $Timer1Anfang & ' "SEndeTimer1= "' & $Timer1Ende & '"',@SW_HIDE )

    [/autoit]

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • Hi Darter,


    ja habe ich, dass Script läuft durch und die DOS Box ist versteckt aber es werden keine weiteren Variablen mit gegeb und daher auch keine Werte.
    Gruß

    Marcus

  • Hi Darter,


    ja habe ich, dass Script läuft durch und die DOS Box ist versteckt aber es werden keine weiteren Variablen mit gegeb und daher auch keine Werte.
    Gruß

    Marcus


    Aber ohne @Hide Funktioniert es?
    Ansonsten epfehle ich dir es mit ShellExecute ( "filename" [, "parameters" [, "workingdir" [, "verb" [, showflag]]]] ) zu versuchen.

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • Hi Darter,
    stimmt genau ohne @Hide funzt es, werde mal Deinen Vorschlag ausprobieren.
    Bis später...
    Gruß

    Marcus

  • Ah entschuldigung ich hab natürlich einen Fehler eingebaut. habe den Parameter Workdir übersehen.
    Ich denke so dürfte es Funktionieren:

    [autoit]

    RunWait(@ScriptDir & "\ExecStudioCo.exe" & ' "SDatumTimer1= "' & $Timer1Datum & ' "SNameTimer1= "' & $Timer1Name & ' "SStartTimer1= "' & $Timer1Anfang & ' "SEndeTimer1= "' & $Timer1Ende & '"', "", @SW_HIDE )

    [/autoit]

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • Hallo,


    [autoit]

    ShellExecute(@ScriptDir & "\ExecStudioCo.exe" , ' "SDatumTimer1= "' & $Timer1Datum & ' "SNameTimer1= "' & $Timer1Name & ' "SStartTimer1= "' & $Timer1Anfang & ' "SEndeTimer1= "' & $Timer1Ende & "",@SW_MINIMIZE)

    [/autoit]


    geht soweit nur die DOS-Box wird nicht minimiert oder gar versteckt.

    Gruß
    Marcus