SetupDiCreateDeviceInfoListExW 関数 (setupapi.h)

SetupDiCreateDeviceInfoList 関数は、リモートまたはローカル コンピューターに空のデバイス情報セットを作成し、必要に応じて、セットをデバイス セットアップ クラス に関連付けます。

構文

WINSETUPAPI HDEVINFO SetupDiCreateDeviceInfoListExW(
  [in, optional] const GUID *ClassGuid,
  [in, optional] HWND       hwndParent,
  [in, optional] PCWSTR     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 を呼び出して不要になったときに、返されたデバイス情報セットを削除する必要があります。

デバイス情報セットがリモート コンピューター上のデバイス用である場合 (MachineNameNULL ではない場合)、このセットまたはその要素に対する後続のすべての操作では、リモート要素を含むデバイス情報セットをサポートするルーチンを使用する必要があります。 SetupDiCallClassInstaller など、このサポートを提供しない SetupDiXxx ルーチンには、参照ページでその効果を示すステートメントがあります。

注意

setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupDiCreateDeviceInfoListEx を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Microsoft Windows 2000 以降のバージョンの Windows で使用できます。
対象プラットフォーム デスクトップ
Header setupapi.h (Setupapi.h を含む)
Library Setupapi.lib

こちらもご覧ください

SetupDiCreateDeviceInfoList

SetupDiDestroyDeviceInfoList

SetupDiGetDeviceInfoListDetail