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 つのフラグを、他の各グループのフラグと組み合わせることができます。 グループ内のフラグ値は相互に排他的です。
グループ 1 フラグ | 説明 |
---|---|
WBEM_FLAG_ALWAYS | すべてのプロパティ名を返します。 strQualifierName パラメーターと pQualifierVal パラメーターは使用されません。 |
WBEM_FLAG_ONLY_IF_TRUE | パラメーター strQualifierName で指定された名前の修飾子を持つプロパティのみを返します。 このフラグを使用する場合は、 strQualifierName を指定する必要があります。 |
WBEM_FLAG_ONLY_IF_FALSE | パラメーター strQualifierName で指定された名前の修飾子を持たないプロパティのみを返します。 このフラグを使用する場合は、 strQualifierName を指定する必要があります。 |
WBEM_FLAG_ONLY_IF_IDENTICAL | パラメーター QualifierName で指定された名前の修飾子を持ち、pQualifierVal によって指される VARIANT 構造体で指定された値と同じ値を持つプロパティのみを返します。 このフラグを使用する場合は、 QualifierName と pQualifierVal の両方を指定する必要があります。 |
グループ 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 を含む) |
Library | WbemUuid.lib |
[DLL] | CIMWin32.dll;Esscli.dll;Fastprox.dll;FrameDyn.dll;FrameDynOS.dll;Krnlprov.dll;Ncprov.dll;Wbemcore.dll;Wbemess.dll;Wmipiprt.dll |