次の方法で共有


IWbemServices::CreateClassEnum メソッド (wbemcli.h)

IWbemServices::CreateClassEnum メソッドは、選択基準を満たすすべてのクラスの列挙子を返します。 呼び出し元は、返された列挙子を使用してクラス定義を取得し、 IEnumWbemClassObject::Next を呼び出してクラスの各クラスまたはブロックを取得する必要があります。 完了するには、 IEnumWbemClassObject::Release を呼び出します。

メモ 返された列挙子が 0 (ゼロ) 要素を持つことはエラーではありません。
 

構文

HRESULT CreateClassEnum(
  [in]  const BSTR           strSuperclass,
  [in]  long                 lFlags,
  [in]  IWbemContext         *pCtx,
  [out] IEnumWbemClassObject **ppEnum
);

パラメーター

[in] strSuperclass

NULL または空白でない場合は、親クラス名を指定します。 列挙子では、このクラスのサブクラスであるクラスのみが返されます。 NULL または空白で、lFlags がWBEM_FLAG_SHALLOWされている場合は、最上位クラス (つまり、親クラスを持たないクラス) のみが返されます。 NULL または空白で、lFlagsWBEM_FLAG_DEEP場合は、名前空間内のすべてのクラスが返されます。

[in] lFlags

次のフラグは、このメソッドの動作に影響します。 このパラメーターの推奨値はWBEM_FLAG_RETURN_IMMEDIATELYであり、最適なパフォーマンスを得るためのWBEM_FLAG_FORWARD_ONLYです。

WBEM_FLAG_USE_AMENDED_QUALIFIERS

このフラグが設定されている場合、WMI は、現在の接続のロケールのローカライズされた名前空間に格納されている修正された修飾子を取得します。 設定されていない場合は、イミディエイト名前空間に格納されている修飾子のみが取得されます。

WBEM_FLAG_DEEP

このフラグにより、列挙体は階層内のすべてのサブクラスを強制的に含めますが、このクラスは含まれません。

WBEM_FLAG_SHALLOW

このフラグは、このクラスに見つからないプロパティを提供するサブクラスのすべてのインスタンスを除き、このクラスの純粋なインスタンスのみを列挙に強制的に含めます。

WBEM_FLAG_RETURN_IMMEDIATELY

このフラグにより、半同期呼び出しが発生します。 詳細については、「メソッドの呼び出し」を参照してください。

WBEM_FLAG_FORWARD_ONLY

このフラグにより、前方スクロール列挙子が返されます。 通常、前方専用列挙子は、従来の列挙子よりも高速で使用されるメモリが少なくなりますが、 Clone または Reset の呼び出しは許可されません。

WBEM_FLAG_BIDIRECTIONAL

このフラグにより、クライアントが列挙子を解放するまで、WMI は列挙のオブジェクトへのポインターを保持します。 オブジェクト ポインターは直ちに解放されないため、クライアントが多数のオブジェクトを列挙しようとすると、 HRESULTが WBEM_E_OUT_OF_MEMORY で失敗する可能性があります。 lFlags パラメーターを 0 (ゼロ) に設定した場合、このフラグは既定で暗黙的に指定されます。

[in] pCtx

通常 は NULL です。 それ以外の場合、これは、要求されたクラスを提供しているプロバイダーが使用できる IWbemContext オブジェクトへのポインターです。 コンテキスト オブジェクトの値は、プロバイダーのドキュメントで指定する必要があります。 このパラメーターの詳細については、「 WMI への呼び出しの作成」を参照してください。

[out] ppEnum

列挙子へのポインターを受け取ります。 返されるオブジェクトは正の参照カウントを持ちます。 呼び出し元は、不要になったときにポインターで Release を 呼び出す必要があります。

戻り値

このメソッドは、メソッド呼び出しの状態を示す HRESULT を返します。 次の一覧は、 HRESULT 内に含まれる値の一覧です。

失敗した場合は、COM 関数 GetErrorInfo から使用可能な情報を取得できます。

ネットワークの問題によって Windows Management へのリモート接続が失われる場合は、COM 固有のエラー コードも返される可能性があります。

要件

   
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム Windows
ヘッダー wbemcli.h (Wbemidl.h を含む)
Library Wbemuuid.lib
[DLL] Fastprox.dll;Esscli.dll;FrameDyn.dll;FrameDynOS.dll;Ntevt.dll;Stdprov.dll;Viewprov.dll;Wbemcomn.dll;Wbemcore.dll;Wbemess.dll;Wbemsvc.dll;Wmipicmp.dll。Wmidcprv.dll;Wmipjobj.dll。Wmiprvsd.dll

関連項目

IEnumWbemClassObject

IWbemServices

IWbemServices::CreateClassEnumAsync

エラー コードの取得