__ExtendedStatus 類別
__ExtendedStatus系統類別可用來報告詳細的狀態和錯誤資訊。
下列語法是從 Managed 物件格式 (MOF) 程式代碼簡化,並包含所有繼承的屬性。 屬性會依字母順序,而非MOF順序。
語法
class __ExtendedStatus : __NotifyStatus
{
string Description;
string Operation;
string ParameterInfo;
string ProviderName;
uint32 StatusCode;
};
成員
__ExtendedStatus 類別具有下列類型的成員:
屬性
__ExtendedStatus類別具有這些屬性。
-
說明
-
-
數據類型: 字串
-
存取類型:唯讀
任何描述錯誤或操作狀態的使用者定義字串。
-
-
運算
-
-
數據類型: 字串
-
存取類型:唯讀
在失敗或異常時發生的作業。 Windows Management Instrumentation (WMI) 通常會將此屬性設定為 WMI 方法的 COM API 名稱,例如:IWbemServices::CreateInstanceEnum。
-
-
ParameterInfo
-
-
數據類型: 字串
-
存取類型:唯讀
錯誤或狀態變更所涉及的參數。 例如,如果應用程式嘗試擷取不存在的類別,這個屬性會設定為冒犯類別名稱。
-
-
ProviderName
-
-
數據類型: 字串
-
存取類型:唯讀
識別造成或報告錯誤或狀態變更的提供者。 如果未涉及提供者,此字串會設定為 「Windows 管理」。
-
-
StatusCode
-
-
數據類型: uint32
-
存取類型:唯讀
包含作業的錯誤或資訊碼。 這可以是提供者所定義的任何值,但值 0 (零) 通常保留來表示成功。 此屬性繼承自 __NotifyStatus。
-
備註
__ExtendedStatus類別衍生自 __NotifyStatus 類別。
使用 __ExtendedStatus 類別來報告比簡單結果程式代碼更複雜的資訊。 如果提供者需要更多屬性來描述錯誤,提供者可以從__ExtendedStatus衍生自己的類別。
從__NotifyStatus父類別繼承的 StatusCode 屬性是表示錯誤或狀態值的不帶正負號整數。 當動態提供者從方法傳回這個類別的實例時, StatusCode 和 Description 屬性是由提供者所設定,而其他屬性則由 WMI 設定。
範例
下列 VBScript 程式代碼範例說明如何使用 __ExtendedStatus 來擷取錯誤資訊。
Sub sink_OnCompleted(HResult, oErr, oCtx)
WScript.Echo "All collections returned"
if HResult <> 0 Then
' Determine the type of error.
If oErr.Path_.Class = "__ExtendedStatus" Then
WScript.Echo "WMI Error: "& oErr.Description
ElseIf ExtendedStatus.Path_.Class = "SMS_ExtendedStatus" Then
WScript.Echo "Provider Error: "& oErr.Description
WScript.Echo "Code: " & oErr.ErrorCode
End If
End If
bdone = true
End sub
需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows Vista |
最低支援的伺服器 |
Windows Server 2008 |
Namespace |
所有 WMI 命名空間 |