WMI 腳本高手不完全手冊
2019-10-26 18:02:37
供稿:網友
Windows 管理規范(Windows Management Instrumentation)是一項核心的 Windows 管理技術;用戶可以使用 WMI 管理本地和遠程計算機。WMI 通過編程和腳本語言為日常管理提供了一條連續一致的途徑。用戶可以:
1.在遠程計算機器上啟動一個進程。
2.設定一個在特定日期和時間運行的進程。
3.遠程啟動計算機。
4.獲得本地或遠程計算機的已安裝程序列表。
5.查詢本地或遠程計算機的 Windows 事件日志。
而WMI適用的運得環境也是有些限制的,WMI 適用于所有最新版本的 Windows。WMI 附帶在 Windows Me、Windows 2000、Windows XP 和 Windows Server 2003 之中。
對于 Windows 98 和 Windows NT 4.0,可以訪問http://www.microsoft.com/downloads并搜索“Windows Management Instrumentation (WMI) CORE 1.5 (Windows 95/98/NT 4.0)”。 或直接武林站長站本站下載
注意:在 Windows NT 4.0 上安裝并運行 WMI 之前,需要首先安裝 Service Pack 4 或更高版本。
WMI 需要的其他軟件包括:
1. Microsoft Internet Explorer 5.0 或更高版本。
2. Windows script Host(WSH)。Windows 2000、Windows XP、Windows Server 2003、和 Windows Me 附帶的 WSH,而不是 Windows NT4 或 Windows 98 附帶的 WSH。您可以從以下地址下載 WSH http://www.microsoft.com/downloads. WSH 的最新版本—— 包括在 Windows XP 和 Windows Server 2003 之中——是 WSH 5.6。
要使WMI腳本可以正常的運行,Windows里的WMI 服務(winmgmt)保證是運行的,這樣才可以實現WMI里的更多功能。
好了,關于WMI的一些基本的信息資料就說到這,要想看更多的可以到MicroSoft網站的MSDN找。下面就簡單的講一下WMI腳本編寫的基本要素,看看下面的代碼:
//這個腳本是查看系統啟動的引導配置參數,下面我們來看看關于WMI腳本編寫的架構。
On Error Resume Next
//下面這行是比較重要的,它定義了主機的變量,可以是本機或遠程主機,域上的機等,參數英文的“.”是表示本機,要想實現其它機的可以填上其它機的主機名或IP。
strComputer = "."
//下面這行是通過GetObject得到主機的WMI對象管理空間“/root/cimv2”,如果是本機的是通過NT(Authentication)認證的,所以可以不用用戶名和密碼,而對于非本機或非域機的就要再加多幾條參數,
Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2")
//執行WMI數據對象的查詢
//至于連接遠程的要用下面的語句
Set objLocator = CreateObject("Wbemscripting.SWbemLocator")
Set objService = objLocator.ConnectServer(strComputer, "root/cimv2", "administrator", "a")
Set colItems = objWMIService.ExecQuery("Select * from Win32_BootConfiguration",,48)
//利用數組列出相關
For Each objItem in colItems
Wscript.Echo "BootDirectory: " & objItem.BootDirectory
Next
從上面的例子可以看出寫一個WMI的要求: