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