呼叫被消息過濾器取消,0x80010002

呼叫被消息過濾器取消,0x80010002

在 Windows 客戶端或服務器計算機上打開某些程序時,可能會觸發調用被消息過濾器取消,錯誤代碼為0x80010002 。在其他情況下,調用遺留應用程序時會遇到相同的問題。這篇文章提供了針對此問題的最適用的修復方法。

發生意外錯誤。

消息過濾器取消了呼叫。(HRESULT 異常:0x80010002 (RPC_E_CALL_CANCELED))

呼叫被消息過濾器取消,0x80010002

如果您在嘗試打開應用程序或在 Windows 11/10 計算機上調用該應用程序時收到消息過濾器取消調用 0x80010002 的錯誤提示,那麼我們在下面提出的以下建議修復不分先後應該可以幫助您修復系統上的錯誤。

  1. 檢查遠程過程調用 (RPC) 服務
  2. 重新啟動 Windows Management Instrumentation (WMI) 服務
  3. 運行 WBEMTEST
  4. 重新註冊 DLL,重新編譯。wbem 文件夾中的 mofs,並重新註冊 WMI 服務和提供程序
  5. 修復/重建 Windows Management Instrumentation
  6. 暫時禁用或卸載防病毒軟件
  7. 運行 WBEMTEST
  8. 使用 PortQry 解決 RPC 錯誤
  9. 將 Windows 服務組件監視器從 WMI 轉換為 RPC

讓我們詳細查看建議的修復。如果您的系統有一段時間沒有更新,在您繼續之前,我們建議您檢查更新並在您的系統上安裝任何可用的位(包括可選更新),然後查看問題是否已解決。重新安裝拋出錯誤的應用程序也可能有所幫助。

1]檢查遠程過程調用(RPC)服務

RPCSS 服務是 COM 和 DCOM 服務器的服務控制管理器。它為 COM 和 DCOM 服務器執行對象激活請求、對象導出器解析和分佈式垃圾收集。如果此服務被停止或禁用,使用 COM 或 DCOM 的程序將無法正常運行。此外,RpcSs 服務使用位於 C:\Windows\system32 目錄中的 rpcss.dll 文件。如果文件被刪除或損壞,您可能會遇到此調用被消息過濾器取消,0x80010002 錯誤。

此解決方案要求您檢查並確保遠程過程調用 (RPC) (RpcSs) 服務已啟動並設置為自動啟動,這是默認配置。要恢復服務的默認啟動配置,請以管理員身份運行命令提示符,然後復制並粘貼下面的命令並按 Enter。

sc config RpcSs start= auto
sc start RpcSs

命令執行後,關閉命令窗口並重新啟動計算機。

2] 重新啟動 Windows Management Instrumentation (WMI) 服務

重新啟動 Windows Management Instrumentation (WMI) 服務

Windows Management Instrumentation (winmgmt) 服務提供了一個通用接口和對像模型來訪問有關操作系統、設備、應用程序和服務的管理信息。如果此服務被停止,大多數基於 Windows 的軟件將無法正常運行。如果此服務被禁用,任何明確依賴它的服務都將無法啟動。此外,winmgmt 服務正在使用位於 C:\Windows\system32\wbem 目錄中的 WMIsvc.dll 文件——如果該文件被刪除或損壞,您可能會遇到依賴服務的問題。

此解決方案要求您通過在提升的 CMD 提示符下運行以下命令,確保將 winmgmt 服務設置為目標服務器上的默認啟動配置。如果服務已在運行,請重新啟動該服務。

sc config winmgmt start= auto
sc start winmgmt

3] 運行 WBEMTEST

如果無法按上述方式重新啟動 WMI,則可以在本地運行 WBEMTEST 以測試節點上的 WMI 連接性。為此,請參閱此Microsoft 文檔

4]重新註冊DLL,重新編譯。wbem 文件夾中的 mofs,並重新註冊 WMI 服務和提供程序

對於此解決方案,您需要重新註冊所有 DLL 並重新編譯。wbem 文件夾中的 mofs,並重新註冊 WMI 服務和提供程序。要執行此任務,您需要按照以下步驟創建並運行批處理文件:

  • Windows 鍵 + R調用“運行”對話框。
  • 在“運行”對話框中,鍵入記事本,然後按 Enter 鍵打開記事本。
  • 將以下語法複製並粘貼到文本編輯器中。

@echo off
sc config winmgmt start= disabled
net stop winmgmt /y
%systemdrive%
cd %windir%\system32\wbem
for /f %%s in ('dir /b *.dll') do regsvr32 /s %%s
wmiprvse /regserver
winmgmt /regserver
sc config winmgmt start= auto
net start winmgmt
for /f %%s in ('dir /s /b *.mof *.mfl') do mofcomp %%s

  • 使用名稱保存文件並附加.bat文件擴展名——例如;重新註冊WMI.bat;在保存類型框中,選擇所有文件
  • 現在,以管理員權限運行批處理文件(右鍵單擊保存的文件並從上下文菜單中選擇以管理員身份運行)或簡單地雙擊。bat 文件來運行它。
  • 批處理文件運行後,您可以將其刪除。
  • 重新啟動機器並測試 WMI。

5] 修復/重建 Windows Management Instrumentation

修復或重建 WMI 存儲庫

您可以通過使用下面的源代碼創建批處理文件(如上所示)在本地計算機或服務器(視情況而定)上快速修復或重建 WMI,或者您可以按照鏈接指南中提供的分步說明進行操作。

Echo Rebuilding WMI.....Please wait. > c:\wmirebuild.log
net stop sharedaccess >> c:\wmirebuild.log
net stop winmgmt /y >> c:\wmirebuild.log
cd C:\WINDOWS\system32\wbem >> c:\wmirebuild.log
del /Q Repository >> c:\wmirebuild.log
c:
cd c:\windows\system32\wbem >> c:\wmirebuild.log
rd /S /Q repository >> c:\wmirebuild.log
regsvr32 /s %systemroot%\system32\scecli.dll >> c:\wmirebuild.log
regsvr32 /s %systemroot%\system32\userenv.dll >> c:\wmirebuild.log
mofcomp cimwin32.mof >> c:\wmirebuild.log
mofcomp cimwin32.mfl >> c:\wmirebuild.log
mofcomp rsop.mof >> c:\wmirebuild.log
mofcomp rsop.mfl >> c:\wmirebuild.log
for /f %%s in ('dir /b /s *.dll') do regsvr32 /s %%s >> c:\wmirebuild.log
for /f %%s in ('dir /b *.mof') do mofcomp %%s >> c:\wmirebuild.log
for /f %%s in ('dir /b *.mfl') do mofcomp %%s >> c:\wmirebuild.log
mofcomp exwmi.mof >> c:\wmirebuild.log
mofcomp -n:root\cimv2\applications\exchange wbemcons.mof >> c:\wmirebuild.log
mofcomp -n:root\cimv2\applications\exchange smtpcons.mof >> c:\wmirebuild.log
mofcomp exmgmt.mof >> c:\wmirebuild.log
net stop winmgmt >> c:\wmirebuild.log
net start winmgmt >> c:\wmirebuild.log
gpupdate /force >> c:\wmirebuild.log

6]暫時禁用或卸載防病毒軟件

可能是安全/防病毒軟件導致服務器出現問題,WMI/DCOM 配置錯誤,或者 WMI 存儲庫已損壞。因此,如果您應用上述解決方案1、2、4和5後問題仍然存在,您可以嘗試卸載任何殺毒軟件、禁用Windows防火牆或任何第三方專用防火牆,看看是否有幫助。

7] 使用 PortQry 解決 RPC 錯誤

使用 PortQry 解決 RPC 錯誤

在您深入研究網絡跟踪數據之前,PortQry 可讓您快速了解 RPC 的運作方式。由於拋出的異常引用 RPC,您可以使用 PortQry.exe 命令解決 RPC 錯誤,以快速確定您是否可以根據具體情況在客戶端或服務器計算機上建立連接。

8] 將 Windows 服務組件監視器從 WMI 轉換為 RPC

此修復適用於遇到問題並在 Web 控制台中收到錯誤消息的 SolarWinds 用戶。這種潛在的解決方法可以幫助解決問題,而無需採取諸如重建性能計數器或重建 WMI 存儲庫之類的激烈步驟,而是通過執行以下步驟將 Windows 服務組件監視器從 WMI 轉換為 RPC:

  • 瀏覽到 Orion Web 控制台中的 SAM 摘要頁面。
  • 編輯具有 Windows 服務組件的應用程序模板。
  • 展開 Windows 服務組件。
  • 從 WMI 更改為 RPC 方法。
  • 節省。

要在所有應用程序中將所有可能的 Windows 服務監視器更改為 RPC 方法,您可以使用support.solarwinds.com上提供的 SQL 腳本將所有現有的 Windows 服務組件監視器提取方法從 WMI 轉換為 RPC。

我希望這篇文章有所幫助!

如何修復錯誤代碼 0xc8000402?

據報導,運行 Windows 10 的 Windows 預覽體驗成員很可能會遇到錯誤代碼 0xc8000402,他們在嘗試在其設備上下載最新版本時加入 Dev 或 Beta 頻道。如果您受此影響,作為解決方法,您可以先加入 Release Preview 頻道,然後從那里安裝 Windows 11。

什麼是不成功0x80070002?

SCCM部署中的錯誤0x80070002表示系統找不到指定的文件。在另一種情況下,錯誤 0x80070002 是 Windows 更新錯誤,可能由損壞或丟失的系統文件引起。此外,如果系統沒有足夠的空間來下載更新,您可能會遇到此錯誤。由於連接到系統的硬件設備之間發生衝突,也可能會出現該問題。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *