SetupDiCreateDeviceInfoListExA 関数 (setupapi.h)
SetupDiCreateDeviceInfoList 関数は、リモートまたはローカル コンピューターに空のデバイス情報セットを作成し、必要に応じて、セットをデバイス セットアップ クラス に関連付けます。
構文
WINSETUPAPI HDEVINFO SetupDiCreateDeviceInfoListExA(
[in, optional] const GUID *ClassGuid,
[in, optional] HWND hwndParent,
[in, optional] PCSTR MachineName,
PVOID Reserved
);
パラメーター
[in, optional] ClassGuid
新しく作成されたデバイス情報セットに関連付けるデバイス セットアップ クラスの GUID へのポインター。 このパラメーターを指定した場合は、このクラスのデバイスのみをこのデバイス情報セットに含めることができます。 このパラメーターが NULL に設定されている場合、デバイス情報セットは特定のデバイス セットアップ クラスに関連付けられません。
[in, optional] hwndParent
デバイス固有でないアクションに関連するユーザー インターフェイスに使用する最上位ウィンドウへのハンドル (グローバル クラス ドライバーの一覧を使用する [デバイスの選択] ダイアログ ボックスなど)。 このハンドルは省略可能であり、 NULL にすることができます。 特定の最上位ウィンドウが必要ない場合は、 hwndParent を NULL に設定 します。
[in, optional] MachineName
ネットワーク上のコンピューターの名前を含む NULL で終わる文字列へのポインター。 名前を指定すると、そのコンピューター上のデバイスのみを作成し、このデバイス情報セットで開くことができます。 このパラメーターが NULL に設定されている場合、デバイス情報セットはローカル コンピューター上のデバイス用です。
注意事項
この機能は削除されたため、この関数を使用してリモート マシンにアクセスすることは、Windows 8 および Windows Server 2012 以降ではサポートされていません。
Reserved
NULL にする必要があります。
戻り値
関数は、成功した場合に空のデバイス情報セットへのハンドルを返します。 それ以外の場合は、INVALID_HANDLE_VALUEを返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
この関数の呼び出し元は、 SetupDiDestroyDeviceInfoList を呼び出して不要になったときに、返されたデバイス情報セットを削除する必要があります。
デバイス情報セットがリモート コンピューター上のデバイス用である場合 (MachineName が NULL ではない場合)、このセットまたはその要素に対する後続のすべての操作では、リモート要素を含むデバイス情報セットをサポートするルーチンを使用する必要があります。 SetupDiCallClassInstaller など、このサポートを提供しない SetupDiXxx ルーチンには、参照ページでその効果を示すステートメントがあります。
注意
setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupDiCreateDeviceInfoListEx を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | setupapi.h (Setupapi.h を含む) |
Library | Setupapi.lib |