ShellExec |
Top Previous Next |
Ausführen eines externen Programms, Anzeigen und Drucken von externen Datenfiles. Die Funktion regelt alle Aufrufe von externen Programmen und Daten. Sie kann: Unter NT 4.0 ein Explorerfenster mit einem vorgegebenen Verzeichnis öffnen. Ein Programm aufrufen, das dann parallel zu Moskito läuft. Zu einer Datendatei automatisch das richtige Programm aufrufen und die Datendatei anzeigen. Zu einer Datendatei automatisch das richtige Programm aufrufen und die Datendatei drucken. Voraussetzungen Die Variable GDS$DATA_EXTERN sollte gesetzt sein. Als Defaultwert wird der Wert „..\rahmen\extern“ verwendet. Parameter 1. Parameter Hier steht der Name des Programms oder der Name der Datendatei. Der Name kann alternativ mit dem Parameter PROGRAM/ (s.u.) übergeben werden 2. Parameter Wenn als Parameter 1 ein Programm angegeben ist, dann kann als 2. Parameter angegeben werden, welche Aufrufparameter dieses Programm erhält. Alternativ können sie mit PARAMETER/ (s.u.) übergeben werden. Der 1. Parameter muß eine Datendatei sein. Diese wird dann ausgedruckt. Dies funktioniert nur, wenn das mit dieser Datendatei verbundene Programm das Drucken beherrscht. /EXPLORE Der 1. Parameter muß ein Verzeichnis sein. Es wird dann der Explorer gestartet und sofort das angegebene Verzeichnis eingestellt. PROGRAM/filename Wenn der Datei- bzw. Programmname nicht als 1. Parameter übergeben wurde, dann kann er mit diesem Parameter übergeben werden. PARAMETER/parameter Wenn die Aufrufparameter für das zu startende Programm nicht als 2. Parameter übergeben wurden, dann können sie mit diesem Parameter übergeben werden. /PROCESS Ist dieser Schalter aktiv, so können nur Programm-, nicht aber Datendateien gestartet werden. Dafür ist es (mit dem Schalter /WAIT s.u.) möglich, Moskito auf das Ende des Programms warten zu lassen. /WAIT Moskito wartet auf das Ende des gestarteten Programms, vorausgesetzt der Schalter /PROCESS ist aktiviert. Rückgabewert
Beispiel Befehl eingeben: ShellExec c:\TEMP /EXPLORE Aufruf der Explorers und das Verzeichnis c:\temp wird sofort angezeigt. Befehl eingeben: ShellExec DATEN.TXT Anzeigen der Datei \Moskito\rahmen\extern\Daten.txt Befehl eingeben: ShellExec DATEN.TXT /PRINT Drucken der Datei \Moskito\rahmen\extern\Daten.txt Befehl eingeben: ShellExec notepad.exe daten.txt Aufruf eines Programms mit Parameter Befehl eingeben: ShellExec C:\Programme\prg.exe “xxx p1 p2“ /proc /wait Aufruf eines Programms mit den Schaltern /PROCESS und /WAIT und zwei Parametern p1 und p2 (s.u. bei Bemerkung zu dem “xxx“). Befehl eingeben: ShellExec s_concat( PROGRAM/ s_getOneArg(1 enumFiles(s_concat( GetEnvironment( PATH /RETURN ) \\x) *\\CMD.EXE))) "PARAMETER//C ..\x.cmd" /WAIT /PROCESS Ruft das DOS-Skript x.cmd im Moskito Hauptverzeichnis auf und wartet auf das Ergebnis. Bemerkung Beim Schalter /PROCESS muß der Programmname mit seinem vollständigen Pfad und mit Dateiendung angegeben werden. Außerdem wird der erste Aufrufparameter ignoriert. Vor dem ersten Parameter muß deshalb ein beliebiger Wert hinzugefügt werden. Enthält einer der Aufrufparameter für das Programm das Zeichen ‚/‘, dann müssen sie mittels PARAMETER/ übergeben werden, damit sie korrekt ausgewertet werden. Siehe auch
|