程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> vc教程 >> WMI(Windows管理規范)常見問題解答

WMI(Windows管理規范)常見問題解答

編輯:vc教程

  問:什麼是WMI?

  答:WMI就是 Windows Management Instrumentation(Windows 管理規范)。它是 Windows 中的一個核心管理技術。

  問:WMI的主要益處是什麼?

  答:WMI 為訪問大量的 Windows 管理數據和方法的提供了一個統一的機制。WMI通過腳本、C++程序接口、.Net類(系統管理)和命令行工具(WMIC)提供了對這個信息的訪問。WMI的功能還包括事件、遠程、查詢、查看、計劃和實施用戶擴展及更多內容。

  問:誰應該使用WMI?

  答:WMI對很多人都有用:

管理員可使用 WMIC 的命令行管理能力。
腳本程序員可使用 WMI 腳本來自動進行任務管理。
通過編寫一個 WMI 支持程序,系統開發人員可使用 WMI 發布他們的檢測工具。
通過編寫一個 WMI 支持程序,應用程序開發人員可使用WMI發布他們的應用程序管理檢測工具。
使用豐富的查詢和事件特性,管理應用程序(如監視器)的開發人員可使用WMI訪問Windows工具。

  問:在哪裡可以找到更多關於WMI的信息?

  答:您可以通過 Microsoft.com 及 MSDN Web 站點上找到許多相關白皮書--請以"WMI"和"Windows Management Instrumentation"為關鍵字進行搜索。

  問:關於WMI,有可供我閱讀的書嗎?

  答:是的,關於WMI已經出版了許多書籍。獲取相關書籍列表的最簡單方式就是一個聲譽卓著的在線書店,並以"WMI"或"Windows Management Instrumentation"為關鍵字進行搜索。

  問:什麼是WMI存儲庫?

  答:存儲庫是一個WMI存儲容器, WMI在其中儲存了結構和靜態實例。存儲庫是基於文件系統的。

  問:在Windows CE上可以使用WMI嗎?

  答:現在還不可以。

  問:我能使用什麼協議來訪問WMI?

  答:目前,WMI使用DCOM協議。

  問:我能用XML格式去檢索WMI信息嗎?

  答:是的。可使用"gettext"選項或使用WMIC。注意XML與現在的DMTF標准是兼容的,因此它也是基於DTD的。

  問:什麼是WMIC?

  答:WMIC(其發音是wee''mek)是Window Management Instrumentation Command-line(Windows管理規范命令行)的縮寫。它為WMI提供了一個簡單的命令行界面,因此你可以利用WMI來管理運行Microsoft Windows的計算機。WMIC與現有的shell和實用命令交互操作,並且可以很方便地通過腳本或其它面向管理的應用程序進行擴展。WMIC在Windows XP Professional和Windows .Net Server 2003等操作系統上是可用的。WMIC能讓你:

浏覽WMI計劃,查詢它們的類和實例,通常使用"別名"或"友好名稱",這就使WMI看起來更直觀。
只用一個命令就可以讓本地計算機、遠程計算機或多台計算機一起工作。
定制別名和輸出格式以滿足你的需要。
創建並執行一個基於WMIC的腳本(批處理文件)。

  WMIC在你第一次運行的時候進行安裝。要啟動WMIC (從"開始"->"運行" ,或在命令行提示符下),輸入wbemtest。在任何地方輸入"/?"或"-?"可得到幫助。

  問:在哪裡能找到WMI SDK?

  答:可以從 Platform SDK Redistributables 站點中得到WMI SDK。

  問:什麼是WBEM測試?

  答:Windows Management Instrumentation(WMI)測試程序,也叫做WBEMTest,是一個在Windows Management Instrumentation(WMI)服務程序和WMI應用程序開發期間,用於查看和更改公共信息模型(Common Information Model,CIM)類、實例和方法的常規工具。

  你還可以使用WBEMTest來解決WMI和依賴於WMI的程序中的問題。

  使用WBEMTest來執行下面的任務:

創建、列舉及刪除CIM類和實例。
執行方法。
運行查詢。
顯示關於類和實例的受管理對象格式(Managed Object Format,MOF)代碼。

  WBEMTest和操作系統一起運行。想要啟動WBEMTest (從"開始"->"運行",或者是命令行提示符下),請輸入wbemtest。

  問:WMI會生成什麼樣的日志?

  答:默認情況下,WMI生成包含錯誤信息的日志文件。日志文件位於%windir%/system32/wbem/logs目錄中。

更詳細的記錄可通過將HKLM/Software/Microsoft/WBEM/Cimom/Logging 的值改為2來激活,或者將其設為0來取消詳細記錄。
每個服務程序的詳細記錄可由HKLM/Software/Microsoft/WBEM/Providers/Logging激活。

  問:我怎樣才能糾正一個有缺陷的WMI腳本?

  答:最容易的方式是刪除所有"On Error Resume Next"(vbscript腳本)或"Try…Catch"(JScript腳本),並且讓腳本宿主捕獲錯誤。這樣,通常情況下,你就會得到一個詳細的錯誤描述信息以及出錯腳本的行的位置。如果錯誤消息不充分,下一步就是執行與在WBEMTest中運行腳本相同的步驟。

  問:怎樣才能重建存儲庫?

  答:如果你刪除或重命名了存儲庫,第一個WMI操作就是強制Winmgmt重建這個存儲庫。只有標記為自動恢復的MOF才能被"re-mofcomp''d"(意思是你可能丟失一些靜態數據,除非你已經在其它位置對它作了備份)。

  從命令行中輸入:

Net stop winmgmt /y
Rename %windir%/system32/wbem/repository %windir%/system32/wbem/repository.old

  問:在各個Windows平台上運行的WMI都是什麼版本?

  答:

Windows 95/Windows 98:WMI 1.0 build 450 (加載項)
Windows NT (SP4後的版本):WMI 1.1 build 698 (加載項)
Windows Me/Windows 2000:WMI 1.5 build 1085 (作為操作系統的一部分被安裝)
Windows XP/Windows .Net Server 2003:操作系統構造的一部分,采用了操作系統的版本號。

  版本早於1.5的所有平台都能升級到1.5版。WMI1.5版可以從MSDN上的Windows Management Instrumentation (WMI) CORE 1.5中下載。

  問:WMI和性能計數器間有什麼關系?

  答:性能計數器通過WMI的COM和腳本接口得到使用。WMI還支持規范化的性能計數器(通過寫一個WMI高性能提供者)。通過運行"Perfmon /wmi",高性能提供者支持的性能計數器可以出現在Perfmon中。在Windows XP及後續產品中,默認情況下這些計數器就會出現在Perfmon中。

  問:如果我認為我找到了程序中存在的一個錯誤,我應該怎樣做?

  答:請參閱相關產品反饋。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved