關於 設定管理員 錯誤

在 設定管理員 中,發生設定管理員錯誤時,可能是 Windows Management Instrumentation (WMI) 或是 SMS 提供者錯誤。

在 __ExtendedStatus 執行個體中報告 WMI 錯誤。 在 的 SMS_ExtendedStatus執行個體中報告 SMS 提供者錯誤。

處理錯誤的方式取決於您使用的程式設計語言。

使用 WMI 處理錯誤

在 VBScript 中,如果同步作業期間發生錯誤,則錯誤物件 Number 屬性為非零。 通常,您可以在變更或查詢 SMS 提供者之後檢查此值。 在非同步作業中,您會收到回呼函式的 OnCompleted 錯誤物件。

取得錯誤物件執行個體之後,您可以檢查 __Class 屬性以判斷錯誤來源。 WMI 會為 WMI 錯誤建立 __ExtendedStatus 的執行個體,而 SMS 提供者會為 SMS 提供者錯誤建立 的 SMS_ExtendedStatus 執行個體。 SMS_ExtendedStatus 衍生自 __ExtendedStatus。 您也可以在 SMSProv.log 中找到簡訊提供者錯誤的詳細資料。

如需處理同步錯誤的詳細資訊,請參閱 如何使用 WMI 處理 設定管理員 同步錯誤。

如需處理非同步錯誤的詳細資訊,請參閱 如何使用 WMI 處理 設定管理員 非同步錯誤。

使用託管簡訊提供者進行錯誤處理

若要使用受管理的 設定管理員 提供者處理 設定管理員 錯誤,請攔截 設定管理員 特定的例外狀況。

Exception 描述
SmsQueryException SmsQueryException發生 設定管理員 查詢錯誤時引發。 它提供特定於 設定管理員 (SMS_ExtendedStatus) 的例外狀況資訊,也會封裝所引發的任何 WMI 例外狀況。

SmsQueryException.ErrorCode 對應至同等 System.ManagementException 例外狀況代碼。

SmsQueryException.ExtendStatusCode 對應至中 SMS_ExtendedStatus.ErrorCode引發的 SMS 提供者錯誤碼。
SmsConnectionException SmsConnectionException 當 WMI 連線中斷時引發。
SmsException SmsException是 和SmsConnectionException衍生的SmsQueryException基底類別。 它永遠不會被舉起,但可以抓住它來捕捉兩者。SmsQueryExceptionSmsConnectionException

存取__ExtendedStatus和SMS_ExtendedStatus物件

由於 __ExtendedStatus 且 SMS_ExtendedStatus 不是由託管 SMS 提供者包裝,因此您必須使用 System.Management ManagedException 物件。

如果您不需要存取錯誤 WMI 物件,您可以存取 SMSException.Details 中的例外狀況詳細資料字串。

如需處理同步例外狀況的詳細資訊,請參閱 如何使用 Managed 程式碼處理 設定管理員 同步錯誤。

如需處理非同步例外狀況的詳細資訊,請參閱 如何使用 Managed 程式碼處理 設定管理員 非同步錯誤。

另請參閱

關於錯誤

如何使用 WMI 處理 設定管理員 同步錯誤

如何使用 WMI 處理 設定管理員 非同步錯誤

使用 Managed 程式碼造成的 設定管理員 非同步錯誤

如何使用 Managed 程式碼處理 設定管理員 同步錯誤