俞木發

WMI是通過后臺的系統服務加載并運行的。要對該服務的響應狀態進行檢測,以管理員身份啟動Windows PowerShell,在其中輸入“get-wmiobject Win32_Operating System”并回車執行,正常情況下會在PowerShell窗口中顯示系統目錄、版本等詳細信息。但是,如果WM I服務有異常,此時系統會返回“服務器運行失敗”的提示,表示調用WMI服務出現了問題(圖1)。
此時可以先通過服務管理組件來查詢服務狀態是否正常。在名稱列表中找到“Windows? Management Instrumentation”(對應“Winmgmt服務”),查看其狀態,正常情況下應顯示為“正在運行”。如果是其他狀態(如顯示為“暫停”或者“已停止”),那么就會出現圖1所示的問題。此時可以進入該服務的設置界面,將其啟動狀態設置為“自動”,并點擊“恢復”,確保服務正常運行即可解決問題(圖2)。
比如公司某臺電腦在打開“計算機管理→服務和應用程序→WMI控件”,試圖查看其屬性時系統返回錯誤提示(圖3)。
如果系統出現圖3所示的問題,大多是由于系統WM I存儲庫受損導致的。解決的方法是先檢查系統的W M I 存儲庫狀態,在Power Shell窗口中輸入命令“winmgmt /verifyrepositor y”并執行,如果出現異常則會返回“存儲庫不一致”(或“WMI存儲庫驗證失敗”)的提示(圖4)。
在上述的窗口中輸入命令“Winmgmt /salvagerepository”并執行,對WMI存儲庫執行軟修復操作,如果屏幕返回“ W M Irepository has been salvaged.”的提示,則表明已經成功修復受損的存儲庫。如果軟修復的方法無法解決問題,還可以在上述的窗口中輸入并執行“net stop Winmgmt”(先停止WMI服務)和“ Winmgmt/resetrepositor y”命令,重置WMI數據庫到安裝Windows 10后的初始狀態,重置成功后屏幕會提示“WMI存儲重置成功”(圖5)。這樣可以解決大多數WMI控件出錯的問題。
注意:
將WMI存儲庫恢復到系統的初始狀態后,一些依賴WMI服務的軟件運行后可能會出現問題,只要將軟件重新安裝一次即可解決。

系統很多組件的運行都依賴WMI服務,比如系統命令Tasklist、MSinfo32.exe、VBS腳本等,如果在運行這類系統組件時系統返回錯誤代碼(圖6),也是由于系統WMI存儲庫受損導致的,可以先嘗試使用圖5所示的方法進行修復。如果問題依舊,那么就需要對WMI存儲庫進行重建操作。
先到“https://share.weiyun.com/bY0hKI3Q”下載所需的批處理文件1.bat,下載后將其放置在D:\備用,接著右擊該批處理并選擇“以管理員身份運行”,批處理會停止WMI服務并重建(圖7)。
完成上述的操作后重啟電腦,進入桌面后再以管理員身份啟動命令提示符,輸入命令“winmgmt /verifyrepository”并執行,此時屏幕會提示“WMI存儲庫一致”,表示重建操作成功(圖8)。