SWbemServices.SubclassesOf 方法

SWbemServices物件的SubclassesOf方法會傳回SWbemObjectSet物件。 這個物件是指定類別的子類別集合。 傳回集合中的專案可以使用標準集合方法取得。 如需詳細資訊,請參閱 存取集合

這個方法僅適用于類別物件。

方法會在半非同步模式中呼叫。 如需詳細資訊,請參閱 呼叫方法

如需此語法的說明,請參閱 腳本 API 的檔慣例

語法

objWbemObjectSet = .SubclassesOf( _
  [ ByVal strSuperclass ], _
  [ ByVal iFlags ], _
  [ ByVal objWbemNamedValueSet ] _
)

參數

strSuperclass [選擇性]

指定父類別名稱。 只有這個類別的子類別會在列舉值中傳回。 如果您將此參數保留空白,且 iFlagswbemQueryFlagShallow,則只會傳回最上層類別 (也就是沒有父類別的類別) 。 如果此參數為空白, 且 iFlagswbemQueryFlagDeep 命名空間中的所有類別都會傳回。

iFlags [選擇性]

決定呼叫列舉的詳細程度。 此參數的預設值為 wbemFlagReturnImmediatelywbemQueryFlagDeep。 此參數可以接受下列值。

wbemQueryFlagShallow (1 (0x1) )

強制列舉只包含指定父類別的立即子類別。

wbemQueryFlagDeep (0 (0x0) )

此參數的預設值。 這個值會強制遞迴列舉衍生自指定父類別的所有子類別。 列舉中不會傳回父類別。

wbemFlagReturnImmediately (16 (0x10) )

導致呼叫立即傳回。

wbemFlagReturnWhenComplete (0 (0x0) )

導致此呼叫封鎖,直到呼叫完成為止。 這個旗標會在同步模式中呼叫 方法。

wbemFlagUseAmendedQualifiers (131072 (0x20000) )

導致 WMI 使用基類定義傳回類別增修條款資料。 如需詳細資訊,請參閱 當地語系化 WMI 類別資訊

objWbemNamedValueSet [選擇性]

一般而言,這是未定義的。 否則,這是 SWbemNamedValueSet 物件,其元素代表服務要求的提供者可以使用的內容資訊。 支援或需要這類資訊的提供者必須記載已辨識的值名稱、值的資料類型、允許的值和語意。

傳回值

如果方法成功,則會傳回 SWbemObjectSet 物件。

錯誤碼

完成 SubclassesOf方法之後,Err物件可能會包含下列清單中的其中一個錯誤碼。

注意

具有零個元素的傳回集合不是錯誤。

wbemErrAccessDenied - 2147749891 (0x80041003)

目前使用者沒有檢視呼叫所傳回之一或多個類別的許可權。

wbemErrFailed - 2147749889 (0x80041001)

未指定的錯誤。

wbemErrInvalidClass - 2147749904 (0x80041010)

指定的類別不存在。

wbemErrInvalidParameter - 2147749896 (0x80041008)

指定了不正確參數。

wbemErrOutOfMemory - 2147749894 (0x80041006)

記憶體不足,無法完成作業。

範例

下列 PowerShell 範例示範如何在遠端系統上擷取類別的子類別。

$NameSpace = 'root\ccm'
$ComputerName = 'sccm.company.com'
$WbemLocator = New-Object -ComObject "WbemScripting.SWbemLocator"
$WbemServices = $WbemLocator.ConnectServer($ComputerName, $Namespace)
$WbemClasses = $WbemServices.SubclassesOf()
$WbemClasses

規格需求

需求
最低支援的用戶端
Windows Vista
最低支援的伺服器
Windows Server 2008
標頭
Wbemdisp.h
類型程式庫
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemServices
IID
IID_ISWbemServices

另請參閱

SWbemServices

SWbemObjectSet