« Zurück zu Produkt

Dokumentation

IPS_Execute

 boolean IPS_Execute (string $Programmpfad, string $Parameter, boolean $Dummy, boolean $Warten) 

Parameterliste

Programmpfad

Vollständiger Pfad zum Programm

Parameter

An das Programm zu übergebende Parameter (optional)

Dummy

Immer true angeben, Parameter wird nicht ausgewertet, dieser wurde nur in Version 1.x genutzt.

Warten

Gibt an, ob auf das Programmende gewartet werden soll.

Rückgabewert

Den Rückgabewert von stderr/stdout, wenn der Warten Parameter auf True ist, sonst ist die Rückgabe ein leerer String.

Beschreibung

Die Funktion veranlasst den Start des externen Programms mit dem Namen ProgrammName. Dem Programm wird der String-Parameter als Aufrufparameter übergeben. Der Boolean-Wert Warten legt fest, ob das Programmende abgewartet oder das aufrufende Skript sofort fortgesetzt werden soll. Wird auf das Ergebnis gewartet, erscheint dieses, falls vorhanden, als String im Rückgabewert.

Als Quelle für den Rückgabewert kommt eine der folgenden Programmausgaben in Frage:

  • Ausgabe nach stderror
  • Ausgabe nach stdout

Werden vom Programm beide Möglichkeiten genutzt, erhält stderror den Vorrang, um z.B. Fehlermeldungen nicht zu verlieren.

Warning

Vorsicht: Beim Warten auf das Programmende verlängert sich die Laufzeit des Skripts entsprechend. Dabei ist darauf zu achten, dass die in der Datei “php.ini” definierte maximale Laufzeit nicht überschritten wird. Andernfalls wird das Skript mit einer Fehlermeldung abgebrochen. Dies ist vor allem dann wichtig, wenn das Programm Benutzereingaben erwartet.

Warning

Achtung: Wenn das zu startende Programm interaktiv ist (z.B. ein Fenster beinhaltet), wird dieses nicht angezeigt/ sichtbar. Es wird im Hintergrund als System-Prozess gestartet und kann dann nur mit Hilfe des Task-Managers gestoppt werden. Soll das Programm auf dem Desktop angezeigt werden, muss die IPS_ExecuteEx Funktion verwendet werden.

Beispiel

//Eine Batchdatei starten
IPS_Execute("C:/autoexec.bat", "", false, false);
Haben Sie noch Fragen?