WScript is Window Script Host's (WSH's) default script host. In the Snippets to Go article "Function Determines the Script Host on the Fly" (December 2005, InstantDoc ID 48200), Bill Stewart provides the ScriptHost function, which enables a WSH script to determine the script host (i.e., WScript or CScript) that's running it.

I wrote a similar subroutine named checkengine, which Listing 1 shows. However, the checkengine subroutine not only determines the script host currently being used but also automatically changes it to CScript if necessary. As callout A in Listing 1 shows, the subroutine uses an If...Then... Else statement to change to cscript.exe if wscript.exe is currently the script host.

Listing 2 demonstrates how to use the checkengine subroutine in a script. To test this script, open a command-shell window and run the command

WScript SampleScript.vbs 

Alternatively, you can run the command

WScript //h:wscript 

then launch the script by typing


When you run this script, you'll receive two messages in the command-shell window to confirm that CScript is the current script host.

Share Your Scripting Experiences
Share your scripting discoveries, comments, problems, and solutions. Email your contributions (500 words or less) to r2rwinscriptsol@windows Please include your full name and phone number. We edit submissions for style, grammar, and length. If we print your submission, you’ll get $100.