共用方式為


IWbemClassObject::GetNames 方法 (wbemcli.h)

IWbemClassObject::GetNames方法會擷取 物件中屬性的名稱。 此外,視使用者提供的選取準則而定,它可以擷取屬性的所有或子集。 然後,您可以針對每個名稱使用 IWbemClassObject::Get 來存取這些屬性。 這個方法也可以傳回 系統屬性

語法

HRESULT GetNames(
  [in]  LPCWSTR   wszQualifierName,
  [in]  long      lFlags,
  [in]  VARIANT   *pQualifierVal,
  [out] SAFEARRAY **pNames
);

參數

[in] wszQualifierName

可為 Null的參數。 如果不是 Null,它必須指向有效的 LPCWSTR ,指定做為篩選準則一部分運作的限定詞名稱。 這會以唯讀方式處理。 如需詳細資訊,請參閱<備註>。

[in] lFlags

如需詳細資訊,請參閱<備註>。

[in] pQualifierVal

可為 Null的參數。 如果不是 Null,它必須指向初始化為篩選值的有效 VARIANT 結構。 這個 VARIANT 是由 方法當做唯讀處理。 因此,呼叫端必須視需要呼叫 VariantClear 。 如需詳細資訊,請參閱<備註>。

[out] pNames

不可為 Null的參數,但在進入時,此參數必須指向 Null。 一律會配置新的 SAFEARRAY 結構,並將指標設定為指向它。 傳回的陣列可以有 0 個專案,但一律會在 傳回WBEM_S_NO_ERROR 時配置。 發生錯誤時,不會傳回新的 SAFEARRAY 結構。

傳回值

這個方法會傳回 HRESULT ,指出方法呼叫的狀態。 下列清單列出 HRESULT中包含的值。 如需一般 HRESULT 值,請參閱 系統錯誤碼

備註

傳回的名稱是由旗標和參數的組合所控制。 例如,可以指定所有屬性的所有名稱,或只能指定索引鍵屬性等等。 主要篩選是在 lFlags 參數中指定;其他參數會根據它而有所不同。

旗標值是位欄位,而且可以合併。 下列每個群組中的一個旗標可以與其他群組中的旗標結合。 群組內的旗標值互斥。

群組 1 旗標 描述
WBEM_FLAG_ALWAYS 傳回所有屬性名稱。 不會使用 strQualifierNamepQualifierVal 參數。
WBEM_FLAG_ONLY_IF_TRUE 只傳回參數 strQualifierName所指定名稱限定詞的屬性。 如果使用此旗標,您必須指定 strQualifierName
WBEM_FLAG_ONLY_IF_FALSE 只傳回沒有 參數 strQualifierName所指定名稱限定詞的屬性。 如果使用此旗標,您必須指定 strQualifierName
WBEM_FLAG_ONLY_IF_IDENTICAL 只傳回具有參數QualifierName所指定名稱限定詞的屬性,而且其值也與pQualifierVal所指向之VARIANT結構所指定的值相同。 如果使用這個旗標,您必須同時指定 QualifierNamepQualifierVal
 
群組 2 旗標 描述
WBEM_FLAG_KEYS_ONLY 只傳回定義索引鍵的屬性或屬性名稱。
WBEM_FLAG_REFS_ONLY 只傳回屬於物件參考的屬性名稱。
 
群組 3 旗標 描述
WBEM_FLAG_LOCAL_ONLY 只傳回屬於衍生最多類別的屬性名稱。 從父類別或父類別中排除屬性。
WBEM_FLAG_PROPAGATED_ONLY 只傳回屬於父類別或父類別的屬性名稱。
WBEM_FLAG_SYSTEM_ONLY 只傳回 系統屬性
WBEM_FLAG_NONSYSTEM_ONLY 只傳回不是系統屬性的屬性名稱。
 

如果屬性不符合指定的篩選準則,則不會傳回空白清單的錯誤。

如需使用BSTR值的SAFEARRAY結構的詳細資訊,請參閱擷取 WMI 實例的一部分

規格需求

   
最低支援的用戶端 Windows Vista
最低支援的伺服器 Windows Server 2008
目標平台 Windows
標頭 wbemcli.h (包含 Wbemidl.h)
程式庫 WbemUuid.lib
Dll CIMWin32.dll;Esscli.dll;Fastprox.dll;FrameDyn.dll;FrameDynOS.dll;Krnlprov.dll;Ncprov.dll;Wbemcore.dll;Wbemess.dll;Wmipiprt.dll

另請參閱

IWbemClassObject

IWbemClassObject::BeginEnumeration

IWbemClassObject::Get

WBEM_CONDITION_FLAG_TYPE

WMI 系統屬性