06.01.2013 Aufrufe

Migration - Smarthome-Components

Migration - Smarthome-Components

Migration - Smarthome-Components

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

IPS_Execute<br />

boolean IPS_Execute ( string $Programmpfad , string $Parameter , boolean $Dummy , boolean $Warten )<br />

Parameterliste<br />

Programmpfad Vollständiger Pfad zum Programm<br />

Parameter An das Programm zu übergebende Parameter (optional)<br />

Dummy V1 Parameter. Wird in der V2 nicht ausgewertet.<br />

Warten Gibt an, ob auf das Programmende gewartet werden soll.<br />

Rückgabewerte<br />

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

Beschreibung<br />

Der Befehl veranlasst den Start des externen Programms mit dem Namen ProgrammName. Dem Programm wird der<br />

String-Parameter als Aufrufparameter übergeben. Der Boolean-Wert Warten legt fest, ob das Programmende abgewartet<br />

oder das aufrufende Skript sofort fortgesetzt werden soll. Wird auf das Ergebnis gewartet, erscheint dieses, falls<br />

vorhanden, als String im Rückgabewert.<br />

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

Ausgabe nach stderror<br />

Ausgabe nach stdout<br />

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

verlieren.<br />

Vorsicht: Beim Warten auf das Programmende verlängert sich die Laufzeit des Skripts entsprechend. Dabei ist darauf<br />

zu achten, dass die in der Datei “php.ini” definierte maximale Laufzeit nicht überschritten wird. Andernfalls wird das<br />

Skript mit einer Fehlermeldung abgebrochen. Dies ist vor allem dann wichtig, wenn das Programm Benutzereingaben<br />

erwartet.<br />

Achtung: Wenn das zu startende Programm interaktiv ist (z.B. ein Fenster beinhaltet), wird dieses nicht angezeigt/<br />

sichtbar. Es wird im Hintergrund als System-Prozess gestartet und kann dann nur mit Hilfe des Task-Managers<br />

gestoppt werden. Soll das Programm auf dem Desktop angezeigt werden, muss die IPS_ExecuteEx Funktion<br />

verwendet werden.<br />

Beispiel<br />

//Eine Batchdatei starten<br />

IPS_Execute("C:/autoexec.bat", "", false, false);

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!