Core Function RunWait
(→show options) |
|||
Line 44: | Line 44: | ||
0 = Run within the current process so that anything printed to console by the run program appears directly on ours. | 0 = Run within the current process so that anything printed to console by the run program appears directly on ours. | ||
1 = Run the program within its own window and dont share our console. | 1 = Run the program within its own window and dont share our console. | ||
+ | 2 = Same as 1 but return a string of the STDOUT and STDERROR (Stuff printed to the console). | ||
</pre> | </pre> | ||
Revision as of 22:50, 22 April 2012
RunWait( <file>, <timeout>, <arguments>, <workdir>, <flag>, <show options> )
Contents |
Description
Runs an external program and waits until the program finishes.
Parameters
file
The name of the executable (EXE, BAT, COM, or PIF) to run.
timeout
Optional; Amount of seconds to wait for process to terminate.
Default -1 which means wait forever.
arguments
Optional; The arguments to use.
workdir
Optional; The working directory.
flag
Optional; The "show" flag of the executed program:
@SW_HIDE = Hidden window @SW_MINIMIZE = Minimized window @SW_MAXIMIZE = Maximized window
Default runs the program normally.
show options
Optional; Options how to executed program will run:
0 = Run within the current process so that anything printed to console by the run program appears directly on ours. 1 = Run the program within its own window and dont share our console. 2 = Same as 1 but return a string of the STDOUT and STDERROR (Stuff printed to the console).
Default 0.
Return Value
Success: The PID of the process that was launched.
Failure: 0.
Remarks
After running the requested program the script pauses until the program terminates. To run a program and then immediately continue script execution use the Run function instead.
Some programs will appear to return immediately even though they are still running; these programs spawn another process - you may be able to use the ProcessWaitClose function to handle these cases.
Example
$val = RunWait('Notepad.exe', 'C:\WINDOWS', @SW_SHOWNORMAL); // script waits until Notepad closes MsgBox("Program returned with exit code: $val");