共用方式為


WMI 疑難排解

在應用程式或腳本中存取 WMI 本機或遠端資料時,您可能會遇到錯誤,範圍從遺漏類別到拒絕存取。 提供者也有可用的偵錯選項和疑難排解類別。

注意

本主題中的資訊適用于開發人員和 IT 系統管理員。 如果您是遇到 WMI 相關錯誤訊息的使用者,請造訪Microsoft 支援服務,並搜尋您在錯誤訊息中看到的錯誤碼。 如需針對 WMI 腳本和 WMI 服務的問題進行疑難排解的詳細資訊,請參閱 WMI 無法運作!

WMI Diagnosis Utility

重要

從 Windows 8 和 Windows Server 2012 開始,不再支援WMI Diagnosis Utility (WMIDiag.exe) 。

Windows 7、Windows Server 2008 R2、Windows Vista 和 Windows Server 2008:

如果 WMI 傳回錯誤訊息,請注意它們可能不會指出 WMI 服務或 WMI 提供者中的問題。 失敗可能源自作業系統的其他部分,並透過 WMI 以錯誤的形式出現。 在沒有任何情況下,您應該刪除 WMI 存放庫作為第一個步驟;因為刪除存放庫可能會對系統或已安裝的應用程式造成損害。

之前,若要取得問題來源的詳細資訊,您可以下載並執行WMI Diagnosis Utility診斷命令列工具。 此工具會產生一份報告,通常可隔離問題的來源,並提供如何修正的指示。 此報告也協助 Microsoft 支援服務協助您。 WMI Diagnosis Utility先前已在下載中心取得。

身為提供者寫入器,除非您撰寫 分離的提供者,否則您也可能遇到偵錯問題。 如需詳細資訊,請參閱 偵錯提供者

記錄和追蹤

WMI 記錄檔已不存在;它們已由 Windows 事件追蹤 (ETW) 取代。 如需詳細資訊,請參閱 追蹤 WMI 活動記錄 WMI 活動和WMI 記錄檔

腳本和應用程式中的疑難排解

WMI 包含一組類別,可針對使用 WMI 提供者的用戶端應用程式 進行疑難排解 。 如需詳細資訊,請參閱 針對 WMI 用戶端應用程式進行疑難排解

提供者寫入器如何防止 WMI 問題

提供者寫入器可以藉由執行下列動作,防止透過 WMI) 出現在錯誤訊息中的許多 (問題:

  • 正確註冊您的提供者。 如需詳細資訊,請參閱 註冊提供者
  • #pragma 自動回復 語句新增至 Managed 物件格式 (MOF) 定義提供者類別的檔案。

如需詳細資訊,請參閱 偵錯提供者將資料提供給 WMI,以及 提供者組態和疑難排解類別

拒絕存取

存取遭拒 的錯誤,由存取 WMI 命名空間和資料的應用程式所報告的腳本和資料通常分成三個類別。 下表列出三種錯誤類別,以及可能造成錯誤和可能解決方案的問題。

錯誤 可能的問題 解決方案
0x800706BA HRESULT_FROM_WIN32(RPC_S_SERVER_UNAVAILABLE)
防火牆問題或伺服器無法使用。
電腦真的不存在,或 Windows 防火牆封鎖連線
連線到 Vista: netsh advfirewall firewall set rule group=「windows management instrumentation (wmi) 」 new enable=yes Connect to downlevel: Allow the 「Remote Administration」 rule in Windows Firewall.
0x80070005 E_ACCESS_DENIED
DCOM 安全性拒絕存取。
使用者無法透過 DCOM 遠端存取電腦。 一般而言,連線到具有不同作業系統版本的遠端電腦時,會發生 DCOM 錯誤。
在 dcomcnfg 中為使用者授與遠端啟動和遠端啟用許可權。 以滑鼠右鍵按一下 [我的電腦- > 屬性]。 在 [COM 安全性] 底下,針對這兩個區段按一下 [編輯限制]。 提供您想要遠端存取、遠端啟動和遠端啟用的使用者。 然後移至 DCOM Config,尋找 「Windows Management Instrumentation」,並提供您想要遠端啟動和遠端啟用的使用者。 如需詳細資訊,請參閱 在不同作業系統之間連線
0x80041003 WBEM_E_ACCESS_DENIED
提供者拒絕存取
使用者沒有在 WMI 中執行作業的許可權。 當您將特定類別查詢為低許可權使用者時,就會發生這種情況,但最常發生在您嘗試叫用方法或將 WMI 實例變更為低許可權使用者時。 您所連線的命名空間已加密,且使用者嘗試使用未加密的連線進行連線
使用 WMI 控制 (讓使用者使用支援加密的用戶端,確定他們Remote_Access設定為 true) Connect。
  • 一般而言,連線到具有不同作業系統版本的遠端電腦時,會發生 DCOM 錯誤。

  • 提供者也可以拒絕存取特定命名空間中的資料,或可能需要特定層級的連接安全性。 如需詳細資訊,請參閱設定用戶端應用程式進程安全性和提供者裝載和安全性

  • 從網際網路連線防火牆 (ICF) 變更拒絕存取錯誤。

    如需詳細資訊,請參閱 透過 Windows 防火牆連線

  • 當低完整性用戶端嘗試存取 WMI 時,DCOM 安全性會傳回拒絕存取錯誤。 例如,在 Internet Explorer 中執行的 ActiveX 控制項,其安全性層級設定為低,無法存取以執行本機 WMI 作業。

    Windows 7: 低完整性使用者具有本機 WMI 作業的唯讀許可權。

錯誤的相關資訊

當您從 WMI 收到錯誤訊息時,可以在 WMI 錯誤常數 中找到訊息,或針對腳本 WbemErrorEnum找到訊息。 不過,錯誤所提供的資訊通常不足以判斷發生的情況。 WMI 存放庫損毀可能會偽裝為類別或實例「找不到」。

如需 WMI 錯誤的詳細資訊:

WMI 疑難排解

追蹤 WMI 活動

記錄 WMI 活動