Windows Script Host
From Wikipedia, the free encyclopedia
The Microsoft Windows Script Host (originally called Windows Scripting Host, but renamed for the second release) is distributed and installed by default on Windows 98 and later versions of Microsoft Windows. It is also installed if Internet Explorer 5 (or a later version) is installed. It provides scripting capabilities comparable to batch files, but with a greater range of supported features. Beginning with Windows 2000, the Windows Script Host became available for use with user login scripts.
It is language-independent in the sense that it can make use of different Active Scripting language engines. By default it interprets and runs plain-text JScript (.JS and .JSE files) and VBScript (.VBS and .VBE files). Users can install different scripting engines to enable them to script in other languages, for instance Perl. The language independent filename extension WSF can also be used. The advantage of the Windows Script File (.WSF) is that it allows the user to use a combination of scripting languages within a single file.
Contents |
[edit] Usage
Windows Script Host may be used for a variety of purposes, including logon scripts, administration and general automation. Microsoft describes it as an administration tool.[1] WSH provides an environment for scripts to run - it invokes the appropriate script engine and provides a set of services and objects for the script to work with.[1] These scripts may be run in either GUI mode (WScript.exe) or command line mode (CScript.exe) offering flexibility to the user for interactive or non-interactive scripts.[2] WSH implements an object model which exposes a set of COM interfaces.[3]
[edit] Example
This is a very simple example of some VBScript which uses the root WSH COM object "Wscript" to display a message and 'OK' button. Upon launching this script the cscript or wscript engine would be called and the runtime environment provided.
Wscript.Echo "Hello World" Wscript.Quit
[edit] Security concerns
Windows applications and processes may be automated using a script in Windows Script Host. Viruses and malware may attempt to use this ability as an exploit. Consequently, some suggest disabling it for security reasons.[4] Alternatively antivirus programs may offer features to control .vbs and other scripts which run in the WSH environment.
One way to address security concerns about Windows Script Host is to change the default handler for the .vbs, .vbe, .js, .jse, .wsf, .wsh file types to edit rather than run.[5]
Since version 5.6 of WSH, scripts can be digitally signed programmatically using the Scripting.Signer object in a script itself, provided a valid certificate is present on the system. Alternatively, the signcode tool from the Platform SDK, which has been extended to support WSH filetypes, may be used at the command line.
By using Software Restriction Policies introduced with Windows XP, a system may be configured to execute only those scripts which have been digitally signed, thus preventing the execution of untrusted scripts.[6]
[edit] Version history
Windows Version | Shipped with WSH version | Last redistributable version |
---|---|---|
Windows 95 | None (Separate redistributable) | 5.6 |
Windows NT 4.0 | None (Separate redistributable) | 5.6 |
Windows 98 | 1.0 | 5.6 |
Windows 2000 | 2.0 (also known as WSH 5.1) | 5.7 |
Windows Me | 2.0 (also known as WSH 5.1) | 5.6 |
Windows XP / Windows Server 2003 | 5.6 | 5.7 |
Windows Vista / Windows Server 2008 / Windows XP SP3 | 5.7 | Not applicable |
The redistributable version of WSH version 5.6 can be installed on Windows 95/98/Me and Windows NT 4.0/2000. WSH 5.7 is downloadable for Windows 2000, Windows XP and Windows Server 2003. Recently, redistributable versions for older operating systems (Windows 9x and Windows NT 4.0) are no longer available from the Microsoft Download Center.
[edit] See also
[edit] References
[edit] External links
- WSH Primer on Microsoft TechNet - Get started with WSH
- WSH home at MSDN
- WSH Reference
- Microsoft Windows Script Downloads
- Release notes for Windows Script 5.7
|
|