CM_Enumerate_Classes関数 (cfgmgr32.h)
CM_Enumerate_Classes関数は、繰り返し呼び出されると、各クラスの GUID を指定することで、ローカル コンピューターのインストールされているデバイス クラスを列挙します。
構文
CMAPI CONFIGRET CM_Enumerate_Classes(
[in] ULONG ulClassIndex,
[out] LPGUID ClassGuid,
[in] ULONG ulFlags
);
パラメーター
[in] ulClassIndex
呼び出し元から指定されたインデックスを、マシンのデバイス クラスの一覧に含めます。 詳細については、「解説」を参照してください。
[out] ClassGuid
デバイス クラスの GUID を受け取る GUID 構造体の呼び出し元指定アドレス (Microsoft Windows SDKで説明)。
[in] ulFlags
Windows 8以降、呼び出し元は次のフラグを指定できます。
CM_ENUMERATE_CLASSES_INSTALLER
デバイス セットアップ クラスを列挙します。
CM_ENUMERATE_CLASSES_INTERFACE
デバイス インターフェイス クラスを列挙します。
それ以外の場合は、0 に設定する必要があります。
戻り値
操作が成功した場合、関数はCR_SUCCESSを返します。 それ以外の場合は、 Cfgmgr32.h で定義されているCR_プレフィックス付きのエラー コードのいずれかを返します。
注釈
ローカル コンピューターのデバイス クラスを列挙するには、 CM_Enumerate_Classes を繰り返し呼び出し、 ulClassIndex 値を 0 から開始し、関数がCR_NO_SUCH_VALUEを返すまで、後続の呼び出しごとにインデックス値をインクリメントします。 一部のインデックス値は、無効なクラス データを含むリスト エントリを表している可能性があります。その場合、関数はCR_INVALID_DATAを返します。 この戻り値は無視できます。
この関数から取得したクラス GUID は、 デバイスインストール機能への入力として使用できます。
Windows 8 以降のオペレーティング システム以降では、呼び出し元は ulFlags メンバーを使用して、CM_Enumerate_Classesが返すデバイス クラスを指定できます。 Windows 8より前では、CM_Enumerate_Classesはデバイス セットアップ クラスのみを返していました。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | cfgmgr32.h (Cfgmgr32.h を含む) |
Library | Cfgmgr32.lib |
[DLL] | Cfgmgr32.dll |