CM_Enumerate_Enumerators_ExA関数 (cfgmgr32.h)
[Windows 8 および Windows Server 2012 以降、この関数は非推奨になりました。 代わりに CM_Enumerate_Enumerators を使用してください。]
CM_Enumerate_Enumerators_Ex関数は、各列挙子の名前を指定することで、ローカルまたはリモート コンピューターのデバイス列挙子を列挙します。
構文
CMAPI CONFIGRET CM_Enumerate_Enumerators_ExA(
[in] ULONG ulEnumIndex,
[out] PSTR Buffer,
[in, out] PULONG pulLength,
[in] ULONG ulFlags,
[in, optional] HMACHINE hMachine
);
パラメーター
[in] ulEnumIndex
コンピューターのデバイス列挙子の一覧に呼び出し元が指定したインデックス。 詳細については、次の 「解説 」セクションを参照してください。
[out] Buffer
列挙子名を受け取るバッファーのアドレス。 このバッファーはMAX_DEVICE_ID_LENサイズにする必要があります (または、 Buffer を 0 に設定し、 puLength によって参照される場所の実際の名前の長さを取得します)。
[in, out] pulLength
バッファー サイズを保持する場所の呼び出し元が指定したアドレス。 呼び出し元は、Buffer が指すバッファーの長さを指定 します。 関数は、この値を列挙子の名前文字列の実際のサイズに置き換えます。 呼び出し元が指定したバッファー長が小さすぎる場合、関数は必要なバッファー サイズを提供し、CR_BUFFER_SMALLを返します。
[in] ulFlags
使用されません。0 にする必要があります。
[in, optional] hMachine
呼び出し元が指定したマシン ハンドル。 CM_Connect_Machineの前の呼び出しから取得されます。
戻り値
操作が成功した場合、関数はCR_SUCCESSを返します。 それ以外の場合は、 Cfgmgr32.h で定義されているCR_プレフィックス付きのエラー コードのいずれかを返します。
解説
ローカル コンピューターまたはリモート コンピューターのデバイス列挙子を列挙するには、 CM_Enumerate_Enumerators_Ex を繰り返し呼び出し、 ulEnumIndex インデックス値を 0 から始め、関数がCR_NO_SUCH_VALUEを返すまで、後続の呼び出しごとにインデックス値をインクリメントします。
列挙子名を取得した後、名前を CM_Get_Device_ID_Listへの入力として使用できます。
リモート マシンにアクセスする機能は、Windows 8 および Windows Server 2012 以降のオペレーティング システムで削除されているため、これらのバージョンの Windows で実行している場合はリモート コンピューターにアクセスできません。
要件
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | cfgmgr32.h (Cfgmgr32.h を含む) |
Library | Cfgmgr32.lib |