Other names | Windows Scripting Host |
---|---|
Developer(s) | Microsoft |
Stable release |
5.812 |
Operating system | Microsoft Windows |
Type | Automation technology |
License | Proprietary commercial software |
Website | Windows Script Host overview |
The Microsoft Windows Script Host (WSH) (formerly named Windows Scripting Host) is an automation technology for Microsoft Windows operating systems that provides scripting abilities comparable to batch files, but with a wider range of supported features. This tool was first provided on Windows 95 after Build 950a on the installation discs as an optional installation configurable and installable by means of the Control Panel, and then a standard component of Windows 98 (Build 1111) and subsequent and Windows NT 4.0 Build 1381 and by means of Service Pack 4. WSH is also a means of automation for Internet Explorer via the installed WSH engines from IE Version 3.0 onwards; at this, time VBScript became a means of automation for Microsoft Outlook 97.[1] WSH is also an optional install provided with a VBScript and JScript engine for Windows CE 3.0 and following; some third-party engines, including Rexx and other forms of BASIC, are also available.[2][3][4]
It is language-independent in 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 PerlScript. The language-independent filename extension WSF can also be used. The advantage of the Windows Script File (.WSF) is that it allows multiple scripts («jobs») as well as a combination of scripting languages within a single file.
WSH engines include various implementations for the Rexx, ooRexx (up to version 4.0.0), BASIC, Perl, Ruby, Tcl, PHP, JavaScript, Delphi, Python, XSLT, and other languages.
Windows Script Host is distributed and installed by default on Windows 98 and later versions of Windows. It is also installed if Internet Explorer 5 (or a later version) is installed. Beginning with Windows 2000, the Windows Script Host became available for use with user login scripts.
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.[5] 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.[5] These scripts may be run in GUI mode (WScript.exe) or command line mode (CScript.exe), or from a COM object (wshom.ocx), offering flexibility to the user for interactive or non-interactive scripts.[6] Windows Management Instrumentation is also scriptable by this means.
WSH, the engines, and related functionality are also listed as objects which can be accessed and scripted and queried by means of the VBA and Visual Studio object explorers and those for similar tools like the various script debuggers, e.g. Microsoft Script Debugger, and editors.
WSH implements an object model which exposes a set of Component Object Model (COM) interfaces.[7] So in addition to ASP, IIS, Internet Explorer, CScript and WScript, WSH can be used to automate and communicate with any Windows application with COM and other exposed objects, such as using PerlScript to query Microsoft Access by various means including various ODBC engines and SQL, ooRexxScript to create what are in effect Rexx macros in Microsoft Excel, Quattro Pro, Microsoft Word, Lotus Notes and any of the like, the XLNT script to get environment variables and print them in a new TextPad document, and so on.
The VBA functionality of Microsoft Office, Open Office (as well as Python and other installable macro languages) and Corel WordPerfect Office is separate from WSH engines although Outlook 97 uses VBScript rather than VBA as its macro language.[8]
Python in the form of ActiveState PythonScript can be used to automate and query the data in SecureCRT, as with other languages with installed engines, e.g. PerlScript, ooRexxScript, PHPScript, RubyScript, LuaScript, XLNT and so on. One notable exception is Paint Shop Pro, which can be automated in Python by means of a macro interpreter within the PSP programme itself rather than using the PythonScript WSH engine or an external Python implementation such as Python interpreters supplied with Unix emulation and integration software suites or other standalone Python implementations et al.[9][10] as an intermediate and indeed can be programmed like this even in the absence of any third-party Python installation; the same goes for the Rexx-programmable terminal emulator Passport.[11] The SecureCRT terminal emulator, SecureFX FTP client, and related client and server programmes from Van Dyke are as of the current versions automated by means of WSH so any language with an installed engine may be used; the software comes with VBScript, JScript, and PerlScript examples.
As of the most recent releases and going back a number of versions now, the programmability of 4NT / Take Command in the latest implementations (by means of «@REXX» and similar for Perl, Python, Tcl, Ruby, Lua, VBScript, JScript, and the like) generally uses the WSH engine.[12] The ZOC terminal emulator gets its ability to be programmed in Rexx by means of an external interpreter, one of which is supplied with the programme, and alternate Rexx interpreters can be specified in the configuration of the programme.[13][14] The MKS Toolkit provides PScript, a WSH engine in addition to the standard Perl interpreter perl.exe which comes with the package.
VBScript, JScript, and some third-party engines have the ability to create and execute scripts in an encoded format which prevents editing with a text editor; the file extensions for these encoded scripts is .vbe and .jse and others of that type.
Unless otherwise specified, any WSH scripting engine can be used with the various Windows server software packages to provide CGI scripting. The current versions of the default WSH engines and all or most of the third-party engines have socket abilities as well; as a CGI script or otherwise, PerlScript is the choice of many programmers for this purpose and the VBScript and various Rexx-based engines are also rated as sufficiently powerful in connectivity and text-processing abilities to also be useful. This also goes for file access and processing—the earliest WSH engines for VBScript and JScript do not since the base language did not,[15] whilst PerlScript, ooRexxScript, and the others have this from the beginning.
WinWrap Basic, SaxBasic and others are similar to Visual Basic for Applications, These tools are used to add scripting and macro abilities to software being developed and can be found in earlier versions of Host Explorer for example. Many other languages can also be used in this fashion. Other languages used for scripting of programmes include Rexx, Tcl, Perl, Python, Ruby, and others which come with methods to control objects in the operating system and the spreadsheet and database programmes.[16] One exception is that the Zoc terminal emulator is controlled by a Rexx interpreter supplied with the package or another interpreter specified by the user; this is also the case with the Passport emulator.
VBScript is the macro language in Microsoft Outlook 97, whilst WordBasic is used for Word up to 6, PowerPoint and other tools. Excel to 5.0 uses Visual Basic 5.0. In Office 2000 forward, true Visual Basic for Applications 6.0 is used for all components. Other components use Visual Basic for Applications. OpenOffice uses Visual Basic, Python, and several others as macro languages and others can be added. LotusScript is very closely related to VBA and used for Lotus Notes and Lotus SmartSuite, which includes Lotus Word Pro (the current descendant of Ami Pro), Lotus Approach, Lotus FastSite, Lotus 1-2-3, &c, and pure VBA, licensed from Microsoft, is used in Corel products such as WordPerfect, Paradox, Quattro Pro &c.
Any scripting language installed under Windows can be accessed by external means of PerlScript, PythonScript, VBScript and the other engines available can be used to access databases (Lotus Notes, Microsoft Access, Oracle Database, Paradox) and spreadsheets (Microsoft Excel, Lotus 1-2-3, Quattro Pro) and other tools like word processors, terminal emulators, command shells and so on. This can be accomplished by means of WSH, so any language can be used if there is an installed engine.
In recent versions of the Take Command enhanced command prompt and tools, the «script» command typed at the shell prompt will produce a list of the currently installed engines, one to a line and therefore CR-LF delimited.[17][18][19]
The first example is very simple; it shows some VBScript which uses the root WSH COM object «WScript» to display a message with an ‘OK’ button. Upon launching this script the CScript or WScript engine would be called and the runtime environment provided.
Content of a file hello0.vbs
WScript.Echo "Hello world" WScript.Quit
WSH programming can also use the JScript language.
Content of a file hello1.js
WSH.Echo("Hello world"); WSH.Quit();
Or, code can be mixed in one WSF file, such as VBScript and JScript, or any other:
Content of a file hello2.wsf
<job> <script language="VBScript"> MsgBox "hello world (from vb)" </script> <script language="JScript"> WSH.echo("hello world (from js)"); </script> </job>
Windows applications and processes may be automated using a script in Windows Script Host. Viruses and malware could be written to exploit this ability. Thus, some suggest disabling it for security reasons.[20] Alternatively, antivirus programs may offer features to control .vbs and other scripts which run in the WSH environment.
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.[21]
By using Software Restriction Policies introduced with Windows XP, a system may be configured to execute only those scripts which are stored in trusted locations, have a known MD5 hash, or have been digitally signed by a trusted publisher, thus preventing the execution of untrusted scripts.[22]
Available scripting engines
[edit]
Note: By definition, all of these scripting engines can be utilised in CGI programming under Windows with any number of programmes and set up, meaning that the source code files for a script used on a server for CGI purposes could bear other file extensions such as .cgi and so on. The aforementioned ability of the Windows Script Host to run a script with multiple languages in it in files with a .wsh extension. Extended Html and XML also add to the additional possibilities when working with scripts for network use, as do Active Server Pages and so forth. Moreover, Windows shell scripts and scripts written in shells with enhanced capabilities like TCC, 4NT, etc. and Unix shells under interoperability software like the MKS Toolkit can have scripts embedded in them as well.
Engine name | Scripting language implemented | Base language | File extensions | Availability | Produced by | Status | Initial release date | Encoded scripts | Notes |
---|---|---|---|---|---|---|---|---|---|
VBScript | Microsoft VBScript | Microsoft Visual Basic | .vbs | Installed by default | Microsoft | default install | 1999 | Yes, .vbe | Default windows host script |
JScript | Microsoft JScript | ECMAScript | .js | Installed by default | Microsoft | default install | 1999 | Yes, .jse | Default java script host |
WinWrap Basic | WinWrap Basic | Basic | .wwb | In the main WWB installation | Polar Engineering | Standard functionality of WWB; Utilises both .NET and COM | 2004 | Yes | |
PerlScript | Perl | Perl 5 | .pls | with ActiveState Perl | ActiveState | Open source | 1999 | Reportedly yes | |
PScript | Perl | Perl 5, CGI functionality | .p, .ps | with MKS Toolkit | MKS | Commercial | 2001 | ||
XBScript | xBase Scripting Engine | xBase (Clipper) | .xbs, .prg | Clipper | with XBScript sofrware | Commercial | |||
LotusScript WSH | LotusScript | Microsoft Visual Basic (q.v.) | .nsf | Third party download | Service Desk Plus | Freeware | 2001 | ||
RexxScript | Rexx | Rexx | .rxs, .rx, .rex | With some Rexx implementations | Various | Freeware | 1998 | ||
ooRexxScript | Open Object REXX | REXX | .rxs | with Open Object Rexx or free from some third parties | Open Object Rexx team | Open source | |||
PythonScript | Python | Python | .pys | SourceForge & with ActivePython | The Pywin32 project | Open source | |||
TclScript | Tcl/Tk | Tcl/Tk | .tcls | SourceForge | ActiveState or third party | Open source | |||
ActivePHPScript | PHP | PHP | .phps | with PHP | PHP team | Open source | |||
PHPScript | PHP | PHP | .phps | with PHP | PHP team | Open source | Earlier version of ActivePHPScript | ||
RubyScript | Ruby | Ruby | .rbs | with Ruby distribution | Ruby team | Open source | Yes | ||
XLNTScript | XLNT | DCL | .xcs | with XLNT | Advanced Systems Concepts, Inc. | Commercial | 1997 | An OpenVMS DCL-based multi-purpose scripting application for Windows | |
LuaScript | Lua | Lua | .lua | with Lua | Lua organisation | Open Source | |||
Object REXX engine | Object REXX | Rexx | .rex, .rxs | with IBM Object REXX | IBM | Commercial | 2002 | ||
XML Engine | XML parsing | Extended HTML, XML | .xml | with many XML implementations | Elf Data | de facto Default install | 2000 | Macintosh too | |
Kixtart WSH Engine | Kixtart | KixTart, MS-DOS, Windows 95. Windows NT shells | .kix | with KixStart | Microsoft Netherlands | Windows Resource Kits and other resources | 1996 | Download from Microsoft or elsewhere, aka KixStart32 | |
NullScript | NullScript | Null language | .ns | with NullScript | NullScript Organisation | Windows Resource Kits and other resources | 1999 | ||
ForthScript | Forth | Forth | .fth, others | Forth | DMOZ | Open Source | |||
Haskell Script | Haskell | Haskell | *.hsk (provisional), others | free download | Open Source | ||||
XSLT WSH Engine | XSLT | XSLT | .xslt | free download | Open Source | ||||
CobolScript WSH Engine | Cobol | Cobol | .cbl. .cob, .cb | Fujitsu Cobol 3 — free for educational use | Commercialware from Fujitsu free with free compiler for educators &c | Proprietary | |||
Delphi scripting engine | Delphi | Delphi, a Pascal variant | .dlp, .del, . | In some Delphi distributions or resource kits | Commercial | 2003 | |||
DMDScript | DMDScript | D, a major incrementation of C | .dmd | DMD Distributions, download | Freeware | Available on Web | 2014 | DMD | |
C# Script | C# | Microsoft C#.NET | .cs. .c#, others | Source code available | Open Source, active development underway | unclear | 2013 | ||
Small C Scripting Engine | C | C (K&R, Ansi) | .c, others | Various locations, check Web | Freeware | 2009 | |||
JavaScript WSH Engine | JavaScript/Java | Java & variants | .java, .j, jva, others | With many JavaScript implementations | Sun/Other Java Organisations | Freeware | |||
Take Command WSH Engine | 4NT/Take Command | TCC, the current version of 4NT p | .btm, .cmd, bat, others | Check JP Software | JP Software | Proprietary | 2015 | Early development | |
92Script WSH Engine | TI-89/92+/Voyager 200 TI-Basic | Calculator TI-Basic | .92bs | Project Web/FTP site | Various independent programmers | Experimental, Open Source | 2014 | «possible» | Beta Q4 2015 for main engine; graphing functionality (92Script/Tk) then or later |
48Script WSH Engine | HP-48 Calculator family on-board programming language | HP 48 Programming Language, distant relative of Forth, Basic, Lisp | .48s | Project Web/FTP site | Various independent programmers | Experimental | 2015 | Planned | Status as of 2015-09-30. Language has Lisp, Basic, Forth, and other influences. |
Fortran Script | Fortran | Fortran 77 | .for, .ftn. f77, f90, f95 | Various | Various | Experimental proof-of-concept, academic exercise, shareware, commercial, open source. | 2000 | ||
PascalScript | Object Pascal | Pascal 7 | .pas, .ops, other | Object Pascal | RemObjects | Freeware | 2001 | Can also be used with Delphi directly | |
Lisp WSH Engine | Lisp | Lisp | .lisp, .lsp | Various Lisp tools | AutoLisp and others | Freeware or Shareware | |||
BESEN | ECMA-JavaScript | Java and Variants | .bes, .bsn, others | SourceForge | BESEN Organisation | Open Source | 2011 | ||
ECMAScript WSH engines | Java and Variants | Various | Various | Various | Various | Experimental, Freeware, Open Source, Shareware, Proprietary, Commercialware | 2005 | There are numerous ECMAScript implementations but not all have WSH engines | |
CFXScript WSH Engine | Casio CFX-9850 and fx Calculator series on-board programming language | Casio Calculator Programming Language, as ported to various operating systems as CFW | .cfxb | Project Web/FTP Sites | independent programmers | Experimental | 2015 | Planned[23] | Status as of 2015-09-30. Language has elements of Basic, Forth, Fortran, and others. |
SharpCalcScript WSH Engine | Sharp graphing calculators on-board programming language | Sharp S-Basic as ported to windows as NeusSFortran | .scsb | Project Web/FTP Sites | independent programmers | Experimental | 2015 | Planned | Status as of 2015-09-30. Also subsumes the S-Basic language of Sharp’s Pocket Computers. |
There have been suggestions of creating engines for other languages, such as LotusScript, SaxBasic, BasicScript, KiXtart, awk, bash, csh and other Unix shells, 4NT, cmd.exe (the Windows NT shell), Windows PowerShell, DCL, C, C++, Fortran and others.[24]
The XLNT language[25] is based on DCL and provides a very large subset of the language along with additional commands and statements and the software can be used in three ways: the WSH engine (*.xcs), the console interpreter (*.xlnt) and as a server and client side CGI engine (*.xgi).[26]
When a server implementing CGI such as the Windows Internet Information Server, ports of Apache and others, all or most of the engines can be used; the most commonly used are VBScript, JScript, PythonScript, PerlScript, ActivePHPScript, and ooRexxScript. The MKS Toolkit PScript program also runs Perl. Command shells like cmd.exe, 4NT, ksh, and scripting languages with string processing and preferably socket functionality are also able to be used for CGI scripting; compiled languages like C++, Visual Basic, and Java can also be used like this. All Perl interpreters, ooRexx, PHP, and more recent versions of VBScript and JScript can use sockets for TCP/IP and usually UDP and other protocols for this.
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 CE 3.0 | 1.0 (optional install on installer disc) | 2.0 |
Windows 98 | 1.0 | 5.6 |
Windows 98 Second Edition | 1.0 | 5.6 |
Windows 2000 | 2.0 (also termed WSH 5.1) | 5.7 |
Windows 2000 SP3, SP4 and SP5 | 5.6 | 5.7 |
Windows Me | 2.0 (also termed WSH 5.1) | 5.6 |
Windows XP | 5.6 | 5.7 |
Windows XP SP3 | 5.7 | Not applicable |
Windows Server 2003 | 5.6 | 5.7 |
Windows Vista | 5.7 | Not applicable |
Windows Server 2008 | 5.7 | Not applicable |
Windows 7 | 5.8 | Not applicable |
Windows Server 2008 R2 | 5.8 | Not applicable |
Windows 8 | 5.8 | Not applicable |
Windows Server 2012 | 5.8 | Not applicable |
Windows 10 | 5.812 | Not applicable |
Windows Server 2016 | 5.812 | 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 [when?], redistributable versions for older operating systems (Windows 9x and Windows NT 4.0) are no longer available from the Microsoft Download Center.
Since Windows XP Service Pack 3, release 5.7 is the only version available from Microsoft, with newer revisions being included in newer versions of Windows since.
Version | Included with | Also available for |
---|---|---|
1.0 | Windows CE 3.0 (optional install on installer disc) Windows 98, Windows 98 SE |
Windows 95 Windows NT 4.0 SP3 or later |
2.0 (also termed WSH 5.1) | Windows 2000 RTM, SP1, SP2 Windows Me |
Windows 95 Windows NT 4.0 SP4 or later Windows 98 |
5.6 | Windows 2000 SP3 and later Windows XP RTM, SP1, SP2 Windows Server 2003 |
Windows 9x Windows NT 4.0 SP6a or later |
5.7 | Windows XP SP3 Windows Vista Windows Server 2008 |
Windows 2000 SP4 or later Windows XP Windows Server 2003 |
5.8 | Windows 7 Windows 8 Windows 8.1 Windows Server 2008 R2 Windows Server 2012 Windows Server 2012 R2 |
— |
5.812 | Windows 10 and later Windows Server 2016 and later |
— |
- JScript .NET
- ^ ?MSDN, «Windows Scripting Host» and «VBScript»
- ^ MSDN April 2000 edition, «Windows Scripting Host»
- ^ The VBScript Bible (1999)
- ^ Windows 2000 Server Resource Kit (documentation
- ^ a b «What Is WSH?». msdn.microsoft.com. 24 October 2011. Archived from the original on 7 January 2018. Retrieved 30 April 2018.
- ^ «Windows Script Host Basics». msdn.microsoft.com. 24 October 2011. Archived from the original on 8 August 2017. Retrieved 30 April 2018.
- ^ «Windows Script Host Object Model». msdn.microsoft.com. 24 October 2011. Archived from the original on 8 August 2017. Retrieved 30 April 2018.
- ^ MSDN «VBA»
- ^ User’s Manual, Paint Shop Pro 8
- ^ Paint Shop Pro 8 help, «Automation»
- ^ main help file, Passport for Windows
- ^ Take Command documentation 18.00 documentation hard copy and Help file
- ^ Zoc v 6.0 help
- ^ Zoc 5.0 printed manual
- ^ MSDN documentation
- ^ Windows Office 97 & 2000 Bibles (Wiley)
- ^ Take Command version 18.00 documentation
- ^ JP Software Take Command-4NT-4Dos-4OS/2 site, bulletin board
- ^ Take Command 18.00 help
- ^ «Norman — Antivirus & Security Software for Home & Business». AVG.com. Archived from the original on 21 February 2006. Retrieved 30 April 2018.
- ^ LLC), Tara Meyer (Aquent (30 June 2006). «Providing a Secure eXPerience». msdn.microsoft.com. Archived from the original on 10 November 2017. Retrieved 30 April 2018.
- ^ Windows Script Host 5.6 Boasts Windows XP Integration, Security, New Object Model Archived 2008-02-18 at the Wayback Machine
- ^ CasioCalc.com, msgs of 15.09.2016
- ^ «Notes/Domino 4 and 5 Forum : RE: Suggestion: Make LotusScript a script engine for Windows Scripting Host». Archived from the original on 2015-03-21. Retrieved 2015-03-12.
- ^ ASCI html help file
- ^ ASCI site
- Host
Материал из Википедии — свободной энциклопедии
Перейти к: навигация,
поиск
Windows Script Host (WSH; первоначально назывался Windows Scripting Host, был переименован ко второму выпуску) — компонент Microsoft Windows, предназначенный для запуска сценариев на скриптовых языках JScript и VBScript, а также и на других дополнительно устанавливаемых языках (например, Perl).
Возможности сценариев на WSH значительно превосходят возможности командных .bat и .cmd-файлов: имеются полноценные языки с объектными возможностями, полный набор операций со строками, включая регулярные выражения, взаимодействие с любыми программами, реализующими объектный скриптовый интерфейс (Active Scripting или OLE Automation), доступ к методам и свойствам их объектов; операции с файлами и каталогами, обработка текстовых файлов, манипуляции с системным реестром и т. п.
Сценарии из .js, .vbs, .wsf и некоторых других типов файлов запускаются с помощью одной из двух программ-активаторов: wscript.exe (с графическим интерфейсом) или cscript.exe (с консольным интерфейсом).
Самые первые версии WSH поставлялись в виде отдельного компонента, опционально устанавливаемого в Windows, но уже начиная с Windows 98 WSH стал частью всех ОС Windows.
[править] См. также
- Windows PowerShell
- Visual Basic Script
[править] Литература
- Попов А.В. Windows Script Host для Windows 2000/XP. — СПб.: БХВ-Петербург, 2004. — 640 с. — ISBN 5941571976
[править] Ссылки
- Официальная документация в MSDN
- Windows Scripting Host Resources (англ.) (24 декабря 2003). Архивировано из первоисточника 19 мая 2012. Проверено 25 сентября 2008.
- Windows Script Host (WSH): введение (24 февраля 2006). Архивировано из первоисточника 19 мая 2012. Проверено 25 сентября 2008.
API и фреймворки Microsoft | |
---|---|
Графика | Desktop Window Manager · Direct2D · Direct3D (extensions) · GDI / GDI+ · WPF · Windows Color System · Windows Image Acquisition · Windows Imaging Component |
Аудио | DirectMusic · DirectSound · DirectX plugin · XACT · Speech API · XAudio2 |
Мультимедиа | DirectX (Media Objects · Video Acceleration) · DirectInput · DirectShow · Image Mastering API · Managed DirectX · Media Foundation · XNA · Windows Media · Video for Windows |
Web | MSHTML · RSS Platform · JScript · VBScript · BHO · XDR · SideBar Gadgets |
Доступ к данным | Data Access Components · Extensible Storage Engine · ADO.NET · ADO.NET Entity Framework · Sync Framework · Jet Engine · MSXML · OLE DB · OPC |
Сеть | Winsock (LSP) · Winsock Kernel · Filtering Platform · Network Driver Interface Specification · Windows Rally · BITS · P2P API · MSMQ · MS MPI · DirectPlay |
Коммуникации | Messaging API · Telephony API · WCF |
Администрирование и |
Win32 console · Windows Script Host · WMI (extensions) · PowerShell · Task Scheduler · Offline Files · Shadow Copy · Windows Installer · Error Reporting · Event Log · Common Log File System |
Компонентная модель | COM · COM+ · ActiveX · Distributed Component Object Model · .NET Framework |
Библиотеки | Base Class Library (BCL) · Microsoft Foundation Classes (MFC) · Active Template Library (ATL) · Windows Template Library (WTL) |
Драйверы устройств | Windows Driver Model · Windows Driver Foundation (KMDF · UMDF) · WDDM · NDIS · UAA · Broadcast Driver Architecture · VxD |
Безопасность | Crypto API (CAPICOM) · Windows CardSpace · Data Protection API · Security Support Provider Interface (SSPI) |
.NET | ASP.NET · ADO.NET · Base Class Library (BCL) · Remoting · Silverlight · TPL · WCF · WCS · WPF · WF |
Программное обеспечение | EFx Factory · Enterprise Library · Composite UI · CCF · CSF |
IPC | MSRPC · Dynamic Data Exchange (DDE) · Remoting · WCF |
Доступность | Active Accessibility · UI Automation |
Текст и многоязная |
DirectWrite · Text Services Framework · Text Object Model · Input method editor · Language Interface Pack · Multilingual User Interface · Uniscribe |
Программные интерфейсы и фреймворки Microsoft Windows | |
---|---|
Графика | Проводник Windows • DirectX • Direct3D • GDI • Windows Presentation Foundation • Windows Color System • Windows Image Acquisition • Windows Imaging Component |
Звук | DirectSound • DirectMusic • XACT • Speech API • MME |
Мультимедиа | DirectShow • Windows Media • Media Foundation |
Веб | MSHTML • MSXML • Платформа RSS для Windows • JScript • ActiveX • XMLHttpRequest • Гаджеты |
Доступ к данным | Компоненты Microsoft Data Access • Extensible Storage Engine • ADO.NET • Sync Framework • Jet-механизм |
Сети | Winsock (LSP) • Filtering Platform • NDIS • Windows Rally • Сервис фоновой интеллектуальой передачи данных • P2P API |
Коммуникации | TAPI |
Администрирование | Консоль Win32 • Windows Script Host • Инструментарий управления Windows • PowerShell • Планировщик задач • Offline Files • Теневое копирование • Windows Installer • Диспетчер ошибок Windows • Журнал событий Windows |
Модель компонентов | COM • COM+ • DCOM • .NET Framework |
Библиотеки | Microsoft Foundation Classes (MFC) • Active Template Library (ATL) • Windows Template Library (WTL) • Framework Class Library (FCL) |
Разработка драйверов | Windows Driver Model • Windows Driver Foundation (KMDF • UMDF) |
Безопасность | CryptoAPI (CAPICOM) • Windows CardSpace • Data protection API • Security Support Provider Interface |
.NET | .NET Framework • ASP.NET • ADO.NET • .NET Remoting • Windows Presentation Foundation • Windows Workflow Foundation • Windows Communication Foundation • Windows CardSpace • XNA Framework • Silverlight • Библиотека параллельного программирования |
Межпроцессное взаимодействие |
Dynamic Data Exchange (DDE) • MSRPC • Именованные каналы |
Текст и поддержка языков |
Framework Текстовых сервисов • Объектная модель текстов • Редактор метода ввода • Языковые пакеты • Многоязычный интерфейс |
Игры | XNA Framework • DirectX |
Компоненты Microsoft Windows | |
---|---|
Основные |
Aero • ClearType • Диспетчер рабочего стола • DirectX • Панель задач (Пуск • Область уведомлений) • Проводник (Пространство имён • Специальные папки • Ассоциации файлов) • Windows Search (Smart folders • iFilters) • GDI • WIM • SMB • .NET Framework • XPS • Active Scripting (WSH • VBScript • JScript) • COM (OLE • DCOM • ActiveX • Структурированное хранилище • Сервер транзакций) • Теневая копия • WDDM • UAA • Консоль Win32 |
Службы управления |
Архивация и восстановление • COMMAND.COM • cmd.exe • Средство переноса данных • Просмотр событий • Установщик • netsh.exe • PowerShell • Отчёты о проблемах • rundll32.exe • Программа подготовки системы (Sysprep) • Настройка системы (MSConfig) • Проверка системных файлов • Индекс производительности • Центр обновления • Восстановление системы • Дефрагментация диска • Диспетчер задач • Диспетчер устройств • Консоль управления • Очистка диска • Панель управления (элементы) |
Приложения |
Контакты • DVD Maker • Факсы и сканирование • Internet Explorer • Журнал • Экранная лупа • Media Center • Проигрыватель Windows Media • Программа совместной работы • Центр устройств Windows Mobile • Центр мобильности • Экранный диктор • Paint • Редактор личных символов • Удалённый помощник • Распознавание речи • WordPad • Блокнот • Боковая панель • Звукозапись • Календарь • Калькулятор • Ножницы • Почта • Таблица символов • Исторические: Movie Maker • NetMeeting • Outlook Express • Диспетчер программ • Диспетчер файлов • Фотоальбом |
Игры |
Chess Titans • Mahjong Titans • Purble Place • Пасьянсы (Косынка • Паук • Солитер) • Сапёр • Пинбол • Червы |
Ядро ОС |
Ntoskrnl.exe • Слой аппаратных абстракций (hal.dll) • Бездействие системы • svchost.exe • Реестр • Службы • Диспетчер управления сервисами • DLL (формат модулей) • PE • NTLDR • Диспетчер загрузки • Программа входа в систему (winlogon.exe) • Консоль восстановления • Windows RE • Windows PE • Защита ядра от изменений |
Службы |
Autorun.inf • Фоновая интеллектуальная служба передачи • Файловая система стандартного журналирования • Отчёты об ошибках • Планировщик классов мультимедиа • Теневая копия • Планировщик задач • Беспроводная настройка |
Файловые системы |
Protogon • NTFS (Жёсткая ссылка • Точка соединения • Точка монтирования • Точка повторной обработки • Символьная ссылка • TxF • EFS) • WinFS • FAT • exFAT • CDFS • UDF • DFS • IFS |
Сервер |
Active Directory • Службы развёртывания • Служба репликации файлов • DNS • Домены • Перенаправление папок • Hyper-V • IIS • Media Services • MSMQ • Защита доступа к сети (NAP) • Службы печати для UNIX • Удалённое разностное сжатие • Службы удаленной установки • Служба управления правами • Перемещаемые профили пользователей • SharePoint • Диспетчер системных ресурсов • Удаленный рабочий стол • WSUS • Групповая политика • Координатор распределённых транзакций |
Архитектура |
NT • Диспетчер объектов • Пакеты запроса ввода/вывода • Диспетчер транзакций ядра • Диспетчер логических дисков • Диспетчер учетных записей безопасности • Защита ресурсов • lsass.exe • csrss.exe • smss.exe • spoolsv.exe • Запуск |
Безопасность |
BitLocker • Защитник • Предотвращение выполнения данных • Обязательный контроль целостности • Защищенный канал данных • UAC • UIPI • Брандмауэр • Центр обеспечения безопасности • Защита файлов |
Совместимость |
Подсистема UNIX (Interix) • Виртуальная машина DOS • WOW64 |
Раньше основной операционной системой для компьютеров считалась MS-DOS. Именно тогда возникла необходимость в постоянном выполнении определенных последовательностей действий. Осуществлять их вручную было крайне неразумно. С целью реализации поставленной задачи разработаны bat-файлы. Операционные системы улучшались, но некоторые вещи в них практически не претерпевали изменений. Размеры bat-файлов постоянно увеличивались, поскольку они выполняли всё более значительный список задач. Выход Windows ознаменовал возникновение серьёзной конкуренции в указанной сфере. Она появилась в результате возникновения Windows Script Host (сокращенно WSH).
Что такое Windows Script Host
Файлы WSH предполагают написание на скриптовых языках, куда следует отнести JScript, VBScript, Active Perl, Python и некоторые другие. Они позволяют осуществлять определенную последовательность действий на устройстве. Существует несколько преимуществ перед bat-файлами. Наиболее важным достоинством можно отметить увеличенный спектр действий:
- Создание ярлыков для приложений
- Отключение устройства
- Внесение корректировок в реестр операционной системы
- Работа с сетью
- Переключение пользователей и получение информации о них
- Внесение изменений в переменные окружения
- Вывод на экран различного типа информационных сообщений
Выше перечислена только часть из возможных действий. Полный список отличается своим разнообразием и позволяет писать сценарии практически для любой ситуации. Windows Script Host стал отличным улучшением для новой операционной системы, пришедшей на смену DOS. Что особенно важно, научиться пользоваться предложенными возможностями довольно просто и не составит большого труда.
WSH особенно полезен для администраторов. Это связывается с особенностями внесения изменений в реестр. Не предусматривается выдачи на экран каких-либо сообщений о необходимости подтверждения действий. Подобный фактор позволяет выполнить нужные работы без отвлечения пользователя.
Файлы Windows Script Host
Документы данного типа можно разделить на две основные категории, в зависимости от расширения:
- js – для их написания используется JScript
- vbs – создаются с применением VBScript
Существуют некоторые отличия в синтаксисе, но они являются незначительными. Если Вы знакомы с одним из описанных языков, то в понимании другого не возникнет проблем. Для чтения файлов должны применяться специальные библиотеки. В операционных системах от Windows они являются встроенными и не потребуется осуществлять дополнительную загрузку. На некоторых версиях пакета библиотек нет и следует провести скачивание с официального сайта. Уточнить подобный момент достаточно просто – надо ввести в поиске wscript.exe.
Для написания Windows Script Host документа требуется воспользоваться любым текстовым редактором. Можно использовать специализированные программы, что несколько упрощает поставленную задачу для пользователя.
Настройка
- Microsoft Windows 2000
- Microsoft Windows XP
- Microsoft Windows Servers
- Microsoft Windows Vista
- Microsoft Windows 7
- Microsoft Windows 8
- Microsoft Windows 10
Полезная информация
- Синий экран смерти (BSOD)
- Коды ошибок
- Способы устранения
- Командная строка (CMD)
- Переменные
- Команды
- Примеры bat файлов
- Примеры Rundll32.exe
- Windows Script Host (WSH)
- Объект WshShell
- Объект FileSystemObject
- Объект RegExp
- Объект Dictionary
- Объект Shell
- Константы VBScript
- Функции VBScript
- Объект IE и WebBrowser
- Объект WScript
- Объект WshNetwork
- Basic In/Out System (BIOS)
- AMI bios
- AWARD bios
- Phoenix bios
- UEFI bios
- Реестр Windows
- Хитрости реестра Windows
- Скачать Live CD
- Полезные статьи
- Часто задаваемые вопросы
- Стоит ли переходить на Windows 10?
- Не открывается флешка на компьютере?
- Как разбить жесткий диск на разделы?
- Удалить баннер с рабочего стола
- Лучшие бесплатные антивирусы 2016-2017 года
- Не открывается Вконтакте и другие сайты
- Как убрать всплывающие сайты и рекламу в браузере
Все способы:
- Исправляем ошибку Windows Script Host
- Вариант 1: Системное время
- Вариант 2: Служба обновлений
- Вариант 3: Некорректно установленные обновления
- Вариант 4: Нелицензионная Windows
- Заключение
- Вопросы и ответы: 13
Windows Script Host – особый компонент операционной системы, который позволяет запускать скрипты, написанные на JS (Java Script), VBS (Visual Basic Script) и других языках. При неправильном его функционировании могут наблюдаться различные сбои во время запуска и работы Windows. Такие ошибки зачастую не могут быть исправлены простой перезагрузкой системы или графической оболочки. Сегодня поговорим о том, какие действия необходимо совершить для устранения неполадок в функционировании компонента WSH.
Исправляем ошибку Windows Script Host
Сразу стоит сказать о том, что если вы писали свой скрипт и при его запуске получили ошибку, то необходимо искать проблемы в коде, а не в системном компоненте. Например, вот такое диалоговое окно говорит именно об этом:
Такая же ситуация может возникнуть и в том случае, когда в коде имеется ссылка на другой скрипт, путь к которому прописан неверно либо данный файл вовсе отсутствует на компьютере.
Далее мы поговорим о тех моментах, когда при старте Windows или запуске программ, например, Блокнота или Калькулятора, а также других приложений, использующих системные ресурсы, появляется стандартная ошибка Windows Script Host. Иногда подобных окон может появиться сразу несколько. Случается такое после обновления операционной системы, которое может пройти как в штатном режиме, так и со сбоями.
Причины такого поведения ОС следующие:
- Неверно выставленное системное время.
- Сбой в работе службы обновлений.
- Некорректная установка очередного апдейта.
- Нелицензионная сборка «винды».
Вариант 1: Системное время
Многие пользователи думают, что системное время, которое показывается в области уведомлений, существует только для удобства. Это не совсем так. Некоторые программы, обращающиеся к серверам разработчиков или к иным ресурсам, могут работать некорректно или вовсе отказаться функционировать по причине расхождений в дате и времени. Это же касается и Windows с ее серверами обновления. В том случае, если будет расхождение в вашем системном времени и времени сервера, то могут наблюдаться неполадки с апдейтами, поэтому на это стоит обратить внимание в первую очередь.
- Нажимаем на часы в правом нижнем углу экрана и переходим по ссылке, указанной на скриншоте.
- Далее идем на вкладку «Время по интернету» и жмем на кнопку изменения параметров. Обратите внимание, что ваша учетная запись должна обладать правами администратора.
- В окне настроек устанавливаем галку в указанный на изображении чекбокс, затем в выпадающем списке «Сервер» выбираем time.windows.com и нажимаем «Обновить сейчас».
- Если все пройдет успешно, то появится соответствующая надпись. В случае ошибки с превышением времени ожидания просто нажимаем кнопку обновления еще раз.
Теперь ваше системное время будет регулярно синхронизироваться с сервером времени Майкрософт и расхождения не будет.
Вариант 2: Служба обновлений
Windows – это очень сложная система, с множеством одновременно протекающих процессов, и некоторые из них могут повлиять на работу службы, отвечающей за обновление. Высокое потребление ресурсов, различные сбои и занятость компонентов, помогающих апдейту, «заставляют» службу совершать бесконечные попытки выполнить свою работу. Сам сервис также может сбоить. Выход здесь один: отключить его, а затем перезагрузить компьютер.
- Вызываем строку «Выполнить» сочетанием клавиш Win+R и в поле с названием «Открыть» пишем команду, которая позволит получить доступ к соответствующей оснастке.
services.msc
- В списке находим «Центр обновления», кликаем ПКМ и выбираем пункт «Свойства».
- В открывшемся окне жмем кнопку «Остановить», а затем ОК.
- После перезагрузки служба должна запуститься автоматически. Стоит проверить, так ли это и, если она все еще остановлена, включить ее тем же способом.
Если после выполненных действий ошибки продолжают появляться, то необходимо поработать с уже установленными обновлениями.
Вариант 3: Некорректно установленные обновления
Данный вариант подразумевает удаление тех обновлений, после установки которых начались сбои в Windows Script Host. Сделать это можно как вручную, так и с помощью утилиты восстановления системы. В обоих случаях необходимо вспомнить, когда «посыпались» ошибки, то есть после какой даты.
Ручное удаление
- Идем в «Панель управления» и находим апплет с названием «Программы и компоненты».
- Далее переходим по ссылке, отвечающей за просмотр обновлений.
- Сортируем список по дате установки, кликнув по шапке последней колонки с надписью «Установлено».
- Выбираем нужное обновление, кликаем ПКМ и выбираем «Удалить». Также поступаем с остальными позициями, помня про дату.
- Перезагружаем компьютер.
Утилита восстановления
- Для перехода к данной утилите кликаем правой кнопкой мыши по значку компьютера на рабочем столе и выбираем пункт «Свойства».
- Далее переходим к «Защите системы».
- Нажимаем кнопку «Восстановление».
- В открывшемся окне утилиты жмем «Далее».
- Ставим галку, отвечающую за показ дополнительных точек восстановления. Необходимые нам поинты будут называться «Автоматически созданная точка», тип – «Система». Из них необходимо выбрать ту, которая соответствует дате последнего обновления (или того, после которого начались сбои).
- Жмем «Далее», ждем, пока система предложит перезагрузиться и выполнит действия по «откату» к предыдущему состоянию.
- Обратите внимание, что в этом случае могут быть удалены и те программы и драйвера, которые были установлены вами после этой даты. Узнать, произойдет ли это, можно нажав кнопку «Поиск затрагиваемых программ».
Читайте также: Как восстановить систему Windows XP, Windows 8, Windows 10
Вариант 4: Нелицензионная Windows
Пиратские сборки «винды» хороши лишь тем, что они совершенно бесплатны. В остальном же такие дистрибутивы могут принести массу проблем, в частности, некорректную работу необходимых компонентов. В этом случае рекомендации, приведенные выше, могут не сработать, так как файлы в скачанном образе уже были сбойными. Здесь можно только посоветовать поискать другой дистрибутив, но лучше воспользоваться лицензионной копией Windows.
Заключение
Решения проблемы с Windows Script Host довольно просты, и с ними справится даже начинающий пользователь. Причина здесь ровно одна: некорректная работа инструмента обновления системы. В случае с пиратскими дистрибутивами можно дать следующий совет: пользуйтесь только лицензионными продуктами. И да, правильно пишите ваши скрипты.
Наша группа в TelegramПолезные советы и помощь
Компонент Windows Script Host (WSH) является мощным, полезным и гибким средством для выполнения сценариев в среде Windows, но при этом он представляет собой довольно сложный инструмент. Для начала я расскажу о том, что такое WSH и какие механизмы предоставляет данный компонент для выполнения сценариев в Windows. Затем мы рассмотрим различные типы файлов сценариев и способы их запуска. В следующих статьях я расскажу об особенностях формата файлов .wsc и объясню, что такое компоненты сценариев Windows (Windows Script Components (WSC)).
Что такое WSH?
WSH — это компонент Windows, предоставляющий среду для выполнения сценариев на уровне операционной системы (в отличие от некоторых других контекстов, таких как Web-браузер). WSH не является языком, как, например, Perl, или интерпретатором сценариев, как perl.exe, он представляет собой построенный на базе технологии COM сервер, предназначенный для выполнения сценариев в Windows. В операционных системах версии Windows 2000 и более новых версиях WSH является встроенным компонентом. Для более ранних платформ, таких как Windows NT 4.0 и Windows 98, данный компонент может быть загружен с Web-сайта Microsoft и установлен отдельно.
В WSH имеется две стандартные среды исполнения: VBScript и JScript. VBScript обычно используется при разработке сценариев, предназначенных для решения задач системного администрирования, а JScript (реализация JavaScript от Microsoft) чаще применяется в Web-браузерах, поскольку JavaScript поддерживает широкий спектр различных платформ. В зависимости от типа решаемых задач для разработки сценариев на базе WSH пригодны оба языка. Если в системе установлены соответствующие исполнительные механизмы для поддержки других языков, то сценарии, разработанные на этих языках, также могут выполняться через WSH.
В WSH имеется стандартный набор объектов, предоставляющих весьма полезные возможности. Некоторые из этих объектов, например объект WScript и связанные с ним объекты и коллекции, могут существовать только в сценариях, выполняемых через WSH (т.е. метод WScript.Echo не может быть использован в секции сценариев Web-страницы). Однако многие из этих объектов являются универсальными и могут применяться в любых совместимых с COM языках программирования.
Существует два основных типа сценариев WSH: автономные сценарии (т.е. ориентированные на конкретный язык) и файлы .wsf (Windows script file). Файлы автономных сценариев имеют расширения, зависящие от типа языка, например, .vbs (VBScript) или .js (JScript). Что же касается сценариев .wsf, то они являются текстовыми файлами формата XML, нейтральными по отношению к тому или иному языку, и предоставляют ряд возможностей, которых лишены автономные сценарии. В WSH имеется два сервера сценариев, WScript и CScript, которые будут кратко рассмотрены далее. Здесь также имеется технология WSC, ранее известная как серверные сценарии, с помощью которой в сценариях можно создавать свои COM-компоненты.
Серверы сценариев
Сценарии WSH могут выполняться двумя способами: через сервер WScript, поддерживающий графический интерфейс пользователя, и через консольный сервер сценариев CScript. Серверы сценариев реализованы в виде двух исполняемых файлов: wscript.exe и cscript.exe, соответственно. По умолчанию в Windows используется сервер WScript, но эту установку можно изменить. О том, как это делается, мы поговорим чуть ниже.
При запуске сценария через CScript результаты выполнения команд WScript.Echo и сообщения об ошибках периода выполнения будут отображаться в окне консоли (т.е. окне командной строки). Если сценарий запускается через CScript в окне командной строки, то результаты его выполнения и сообщения об ошибках будут отображаться в этом же окне. Если же сценарий запускается через CScript, но из графического интерфейса (например, из проводника Windows или диалогового окна Run («Выполнить»)), то в этом случае создается временное окно командной строки, в котором и будет выполняться сценарий. Выходные данные сценария и сообщения об ошибках будут отображаться в этом временном окне, которое закроется по завершении выполнения сценария.
В отличие от CScript, сервер WScript не использует для выполнения сценариев консольное окно. Поэтому в данном случае результаты выполнения команд Wscript.Echo и сообщения об ошибках будут отображаться в виде стандартных окон сообщений среды Windows.
Оба рассматриваемых сервера сценариев поддерживают ряд параметров командной строки, с помощью которых можно управлять ходом выполнения сценария и задавать сервер, используемый в системе по умолчанию. Когда сценарий запускается через графический интерфейс пользователя или через командную строку, но при этом вводится только имя файла сценария, он будет выполняться через тот сервер сценариев, который задан в системе по умолчанию. Перечень существующих параметров командной строки можно посмотреть, запустив из командной строки одну из следующих команд:
cscript /?
или
wscript /?
При запуске этой команды для WScript справочное сообщение появится не в командной строке, а будет выведено в виде отдельного окна сообщения.
Параметры командной строки приведены в Таблице 1. Обратите внимание, что при указании в командной строке параметров сервера сценариев перед ними необходимо вводить символы двойного прямого слеша (//), что позволяет предотвратить путаницу с ключами командной строки пользовательских сценариев, где используется одинарный символ прямого слеша (/). Например, если требуется установить CScript в качестве используемого по умолчанию сервера сценариев, а также отключить вывод логотипа и сохранить данную конфигурацию для текущего пользователя, можно запустить из командной строки следующую команду:
cscript //h:cscript //nologo //s
Если были сделаны эти установки по умолчанию, то вам уже не потребуется набирать команду cscript при запуске сценариев из командной строки, сообщение об авторских правах Microsoft также выводиться не будет. Обычно я рекомендую выполнять подобную настройку, поскольку большинство сценариев (в том числе многие административные сценарии, предлагаемые Microsoft) требуют использовать CScript в качестве сервера. Также следует отметить, что некоторые из свойств объекта WScript (не путать с сервером сценариев WScript!) существуют только тогда, когда активным сервером сценариев является CScript.
Если при запуске имя сервера сценариев указывается в явном виде (т.е. команда запуска начинается со слова CScript или WScript), то также необходимо указывать и расширение файла сценария. Например, показанная ниже команда
cscript hello
работать не будет, а команда:
cscript hello.vbs
выполнится успешно (при этом, разумеется, предполагается, что файл сценария hello.vbs имеется в текущем каталоге). Если в командной строке набирается только имя сценария без указания сервера сценариев или расширения, то сценарий будет запущен через сервер, используемый в системе по умолчанию.
Для того чтобы определить, какой именно сервер сценариев используется по умолчанию в данный момент в вашей системе, щелкните в проводнике Windows правой кнопкой мыши на имени любого файла сценариев и посмотрите на появившееся контекстное меню. Если в нем жирным шрифтом выделен пункт Open with Command Prompt («Открыть в командной строке»), то система использует по умолчанию CScript. Если же жирным шрифтом выделен пункт Open, тогда используемым по умолчанию является сервер WScript.
Свойства файла сценариев
Свойства файла сценариев доступны через соответствующее диалоговое окно, которое можно вызвать, щелкнув правой кнопкой мыши на имени сценария в проводнике Windows и выбрав из контекстного меню пункт «Свойства» (Properties). Затем следует перейти к закладке Script, которая показана на экране 1. Два параметра, доступные на этой вкладке, соответствуют двум параметрам командной строки: ключам //T и //Logo (или //Nologo). Если выбрать любой из этих параметров и нажать OK, Windows создаст в одном каталоге с файлом сценария файл .wsh с именем, соответствующим имени сценария (т.е. <имя сценария>.wsh). Это обычный текстовый файл, содержащий описание выбранных параметров, пример его содержимого показан на экране 2. Имеющийся в файле .wsh параметр BatchMode не может устанавливаться через графический интерфейс и соответствует параметру командной строки //B. Если его значение равно нулю (установка по умолчанию), то соответствующий сценарий будет запускаться в интерактивном режиме (//I); если же этот параметр установлен в единицу, тогда сценарий запустится в пакетном режиме (что соответствует параметру командной строки //B). Если нужно использовать эту установку, откройте файл .wsh в Блокноте (Notepad) или аналогичном текстовом редакторе и добавьте соответствующую настройку.
Использование файла .wsh — это единственный способ запуска сценария с предустановленными параметрами выполнения. При открытии файла .wsh соответствующий ему файл сценария запускается через сервер WScript. Довольно странно, что параметр командной строки //H не изменяет используемый по умолчанию сервер сценариев для файлов .wsh. Если нужно из графического интерфейса запустить на выполнение файл .wsh через сервер CScript, щелкните правой кнопкой мыши на имени соответствующего файла и выберите из контекстного меню пункт Open with Command Prompt («Открыть в командной строке»). После этого наберите в окне командной строки:
cscript <имя файла .wsh >
В файле .wsh содержится полное описание пути к соответствующему файлу сценария, поэтому если перенести файл .wsh в какое-либо другое место, то через него по-прежнему можно будет вызывать требуемый сценарий. Следует отметить, что создание файлов .wsh не является строго обязательным, поскольку для запуска сценариев на выполнение с необходимыми установками всегда можно воспользоваться соответствующими параметрами командной строки для CScript или WScript.
Расширения файлов WSH
В Таблице 2 приведен перечень стандартных расширений для файлов, используемых WSH. Автономные файлы сценариев имеют расширения .js или .vbs. Файлы, реализованные на языках, соответствующих каким-либо другим средам выполнения сценариев Active X, имеют собственные расширения (например, .pl для Perl и .py для Python). Автономные сценарии используются чаще всего, поскольку являются наиболее простыми для разработки.
Имеющие формат XML файлы .wsf обладают большей гибкостью по сравнению с автономными сценариями, поскольку могут содержать программный код, написанный на нескольких языках. Они имеют также ряд полезных свойств, таких как возможность включения в сценарий кода из других файлов формата XML, содержащих описания объектов сценариев и имеющих расширение .wsc. Сценарии .wsf и компоненты сценариев .wsc будут обсуждаться более подробно в следующих статьях данной серии.
Я надеюсь, что приведенные здесь сведения помогут внести ясность в понимание назначения компонента WSH и расширений для используемых им файлов. В следующей статье мы рассмотрим файлы .wsf и те дополнительные возможности, которые они предоставляют, по сравнению с автономными сценариями.
Таблица 1. Параметры командной строки для CScript и WScript