Windows腳本宿主

Windows腳本宿主(Windows Scripting Host,WSH)是微軟腳本技術系列中的一種,簡單講,就是提供了一種腳本環境,在這個環境中,預定義了一些對象,同時也可以使用COM里的其他對象。他使用一種腳本引擎來對腳本解釋執行微軟自己支持VBSCRIPT和JSCRIPT,第三方也可以開發自己的腳本引擎。

基本介紹

  • 中文名:Windows腳本宿主
  • 外文名:Windows Scripting Host
  • 簡稱:WSH
簡介,組成,該版本的 WSH 添加了幾處新功能,

簡介

雖說不是只有NT5才有WSH,但NT5(WINDOWS2000)一定有WSH的。實際上,你在WIN98+PWS里,或者NT4+IIS4里,你就能找到WSH。
WSH是微軟腳本技術系列中的一種,簡單講,就是提供了一種腳本環境,在這個環境中,預定義了一些對象,同時也可以使用COM里的其他對象。他使用一種腳本引擎來對腳本解釋執行微軟自己支持VBSCRIPT和JSCRIPT,第三方也可以開發自己的腳本引擎。
具體點,就是你先編好一些腳本檔案微軟自帶例子若干,後綴.vbs或 .js),然後用一個程式對他解釋執行,這個程式就叫Windows Scripting Host,程式的名字是Wscript.exe(或者命令行的Cscript.exe),你可以查看一下你的機器里有沒有這兩個檔案,就知道有沒有WSH了。這非常像批處理檔案,只不過檔案里不是命令行,而是腳本語言寫的腳本。同時,他完成的功能也非常像批處理檔案,只不過多了些控制。
我主要用WSH來完成一些繁瑣的、通常需要我反覆操作才能完成的任務,比如給大量目錄設定ACL,或者創建大量的目錄等等。雖然這也可以編寫VB或VC程式來實現,不過比起腳本來,實在麻煩,至少需要那么大的環境,而腳本只要一個寫字板就成。用WSH技術來配置伺服器,包括創建用戶,創建信箱,創建目錄,創建站點,設定ACL,設定FrontPage ServerExtention,我將在WSH實用講座中分幾講詳細介紹。

組成

WSH自帶的幾個內置對象包括:
1.由 Wscript.exe 提供的對象
Wscript 作為 Wscript 公開給腳本引擎
WshArguments 未公開;通過 Wscript.Arguments 屬性訪問。
2.由 WSHom.Ocx 提供的對象。
WshShell 自動對象。
ProgID 是 Wscript.WshShell。
WshNetwork 自動對象。ProgID 是 Wscript.WshNetwork。
WshShortcut 未公開;通過 WshShell.CreateShortcut 方法訪問。
WshUrlShortcut 未公開;通過 WshShell.CreateShortcut 方法訪問。
WshCollection 未公開;通過 WshNetwork.EnumNetworkDrives 或 WshNetwork.EnumPrinterConnection 方法訪問。
WshEnvironment 未公開;通過 WshShell.Environment 屬性訪問。
WshSpecialFolders 未公開;通過 WshShell.Folder 屬性訪問。
他們主要可以完成環境變數的獲取,網路登入,驅動器映射,快截方式創建,程式載入,特殊資料夾(如系統資料夾)信息獲取等功能。
如果你的系統里支持ADO等COM部件,你同樣可以使用。
Windows 腳本宿主概述通過在 Windows 桌面上單擊腳本檔案,或者在命令提示符下鍵入腳本檔案名稱稱,可以使用 Windows 腳本宿主來運行腳本。與 Microsoft Internet Explorer 類似,Windows 腳本宿主充當了兼容 Windows 腳本的腳本引擎的控制器。但是,與 Internet Explorer 不同,Windows 腳本宿主只需要很少的記憶體,所以非常適合於互動和非互動的腳本,如登錄腳本和管理腳本。
Windows 腳本宿主有兩個版本:基於 Windows 的版本 (Wscript.exe),它提供用於設定腳本屬性的屬性單;另一個是基於命令提示符的版本 (Cscript.exe),它提供用於設定腳本屬性的命令行開關。通過在命令提示符下鍵入 Wscript.exe 或 Cscript.exe 可以運行其中某一個。
以前,受 Windows 作業系統支持的唯一專有腳本化語言是 MS-DOS 命令語言。儘管 MS-DOS 小而快,但是與 VBScript 和 JScript 相比功能有限。例如,控制程式流的能力沒有內置在該語言中。今天,儘管仍然提供對 MS-DOS 命令腳本的支持,但 Windows 腳本宿主體系結構允許用戶利用這些功能強大的腳本語言
Windows 腳本宿主支持用 Visual Basic Scripting Edition (VBScript) 或 JScript 編寫的腳本。當從 Windows 桌面或者命令提示符下啟動腳本時,腳本宿主將讀取指定的腳本檔案內容,並把它傳送給已註冊的腳本引擎腳本引擎使用檔案擴展名(.vbs 用於 VBScript,而.js 用於 JScript)來識別腳本,而不是使用 SCRIPT 標記(用於 HTML)。由於這個原因,您不必熟悉腳本引擎的準確的程式標識符 (ProgID)。腳本宿主自己維護著腳本擴展名到 ProgID 的映射,並針對給定的腳本使用 Windows 關聯模型來啟動合適的引擎。

該版本的 WSH 添加了幾處新功能

經過改進的參數處理
處理和以文檔記錄命令行參數更簡單。
遠程腳本處理
可以將一個腳本載入到隨後可以同時運行的幾個遠程計算機系統上。
運行中的進程是一個對象
可以查詢衍生的進程、降級其事件、訪問其標準 I/O 數據流並與其他進程共享其環境變數。
當前的工作目錄
可以確定和修改活動進程的當前工作目錄的路徑。
腳本安全問題
新的腳本安全模型使分發和運行腳本更安全。
詳細信息,請參閱 Microsoft 網站中的 Windows 腳本技術網站 (http://www.microsoft.com/)。

相關詞條

熱門詞條

聯絡我們