;========================================================================================================================================== ; ; How to run a commandline program in a new process, using the "Run" method from WScript.Shell (Windows Script Host)? ; ; (c)Detlev Dalitz.20120104. ;========================================================================================================================================== ; Test. objWSh = ObjectCreate ("WScript.Shell") objWSh.Run("%%COMSPEC%% /C ECHO. & ECHO.%%DATE%%, %%TIME%% & ECHO. & ECHO.Hello & ECHO. & PAUSE & EXIT", 1, @TRUE) objWSh = 0 :CANCEL Exit ;========================================================================================================================================== ; Run Method (Windows Script Host) ; Runs a program in a new process. ; ; object.Run(strCommand, [intWindowStyle], [bWaitOnReturn]) ; ; Arguments ; object ; WshShell object. ; ; strCommand ; String value indicating the command line you want to run. You must include any parameters you want ; to pass to the executable file. ; ; intWindowStyle ; Optional. Integer value indicating the appearance of the program's window. Note that not all ; programs make use of this information. ; ; bWaitOnReturn ; Optional. Boolean value indicating whether the script should wait for the program to finish ; executing before continuing to the next statement in your script. If set to true, script execution ; halts until the program finishes, and Run returns any error code returned by the program. If set to ; false (the default), the Run method returns immediately after starting the program, automatically ; returning 0 (not to be interpreted as an error code). ; ; Remarks ; The Run method returns an integer. The Run method starts a program running in a new Windows ; process. You can have your script wait for the program to finish execution before continuing. This ; allows you to run scripts and programs synchronously. Environment variables within the argument ; strCommand are automatically expanded. If a file type has been properly registered to a particular ; program, calling run on a file of that type executes the program. For example, if Word is installed ; on your computer system, calling Run on a *.doc file starts Word and loads the document. The ; following table lists the available settings for intWindowStyle. ; ; intWindowStyle ; Description ; ; 0 ; Hides the window and activates another window. ; ; 1 ; Activates and displays a window. If the window is minimized or maximized, the system restores it ; to its original size and position. An application should specify this flag when displaying the ; window for the first time. ; ; 2 ; Activates the window and displays it as a minimized window. ; ; 3 ; Activates the window and displays it as a maximized window. ; ; 4 ; Displays a window in its most recent size and position. The active window remains active. ; ; 5 ; Activates the window and displays it in its current size and position. ; ; 6 ; Minimizes the specified window and activates the next top-level window in the Z order. ; ; 7 ; Displays the window as a minimized window. The active window remains active. ; ; 8 ; Displays the window in its current state. The active window remains active. ; ; 9 ; Activates and displays the window. If the window is minimized or maximized, the system restores it ; to its original size and position. An application should specify this flag when restoring a ; minimized window. ; ; 10 ; Sets the show-state based on the state of the program that started the application. ; ; ; Example 1 ; The following VBScript code opens a copy of the currently running script with Notepad. ; ; Set WshShell = WScript.CreateObject("WScript.Shell") ; WshShell.Run "%windir%\notepad " & WScript.ScriptFullNameThe following VBScript code does the same ; thing, except it specifies the window type, waits for Notepad to be shut down by the user, and ; saves the error code returned from Notepad when it is shut down. ; ; Set WshShell = WScript.CreateObject("WScript.Shell") ; Return = WshShell.Run("notepad " & WScript.ScriptFullName, 1, true)Example 2 ; The following VBScript code opens a command window, changes to the path to C:\ , and executes the ; DIR command. ; ; Dim oShell ; Set oShell = WScript.CreateObject ("WScript.Shell") ; oShell.run "cmd /K CD C:\ & Dir" ; Set oShell = NothingApplies To: ; WshShell Object ; ; See Also ; Reference ; Exec Method (Windows Script Host) ; ; Advertise Here ; 2012 Microsoft. All rights reserved.Terms of Use | Trademarks | Privacy Statement | Site Feedback ;==========================================================================================================================================