次の方法で共有


SetupDiGetDriverInfoDetailA 関数 (setupapi.h)

SetupDiGetDriverInfoDetail 関数は、デバイス情報セットまたはデバイス情報セット内の特定のデバイス情報要素のドライバー情報の詳細を取得します。

構文

WINSETUPAPI BOOL SetupDiGetDriverInfoDetailA(
  [in]            HDEVINFO                  DeviceInfoSet,
  [in, optional]  PSP_DEVINFO_DATA          DeviceInfoData,
  [in]            PSP_DRVINFO_DATA_A        DriverInfoData,
  [in, out]       PSP_DRVINFO_DETAIL_DATA_A DriverInfoDetailData,
  [in]            DWORD                     DriverInfoDetailDataSize,
  [out, optional] PDWORD                    RequiredSize
);

パラメーター

[in] DeviceInfoSet

ドライバー情報を取得するドライバー情報要素を含む デバイス情報セットへのハンドル。

[in, optional] DeviceInfoData

ドライバー情報を取得するデバイスを表すデバイス情報要素を指定する SP_DEVINFO_DATA 構造体へのポインター。 このパラメーターは省略可能であり、NULLできます。 このパラメーターを指定すると、SetupDiGetDriverInfoDetail 指定したデバイスのドライバー一覧のドライバーに関する情報を取得します。 このパラメーターが NULL場合、SetupDiGetDriverInfoDetail は、DeviceInfoSetのグローバル クラス ドライバー リストのメンバーであるドライバーに関する情報 取得します。

[in] DriverInfoData

詳細を取得するドライバーを表すドライバー情報要素を指定する SP_DRVINFO_DATA 構造体へのポインター。 DeviceInfoData が指定されている場合、ドライバーは DeviceInfoDataで指定されたデバイスのドライバー リスト メンバーである必要があります。 それ以外の場合、ドライバーは、DeviceInfoSetのグローバル クラス ドライバー リストのメンバーである必要があります。

[in, out] DriverInfoDetailData

指定したドライバーに関する詳細情報を受け取る SP_DRVINFO_DETAIL_DATA 構造体へのポインター。 このパラメーターを指定しない場合は、DriverInfoDetailDataSize 0 にする必要があります。 このパラメーターが指定されている場合は、DriverInfoDetailData を します。cbSize は、SetupDiGetDriverInfoDetailを呼び出す前に、sizeof(SP_DRVINFO_DETAIL_DATA) の値 設定する必要があります。

DriverInfoDetailData注意 cbSize は、DriverInfoDetailDataSize パラメーターの値に設定しないでください。
 

[in] DriverInfoDetailDataSize

DriverInfoDetailData バッファーのサイズ (バイト単位)。

[out, optional] RequiredSize

詳細なドライバー情報を格納するために必要なバイト数を受け取る変数へのポインター。 この値には、構造体のサイズと、ハードウェア ID リストと互換性のある ID リストを保持する末尾の可変長文字バッファーに必要な追加バイトの両方が含まれます。 リストはREG_MULTI_SZ形式です。 ハードウェア ID と互換性のある ID の詳細については、「デバイス識別文字列の」を参照してください。

戻り値

この関数は、成功した場合 TRUE を返します。 それ以外の場合は、FALSE を返し、GetLastError呼び出すことでログに記録されたエラーを取得できます。

備考

指定したドライバー情報メンバーと呼び出し元が指定したバッファーの両方が有効な場合、この関数は、REG_MULTI_SZ形式を維持しながら、SP_DRVINFO_DETAIL_DATA構造体内のすべての静的フィールドと、末尾の可変長バッファーに可能な限り多くの ID を入力することが保証されます。 この場合、関数は FALSE を返し、GetLastError の呼び出しはERROR_INSUFFICIENT_BUFFERを返します。 指定した場合、RequiredSize には、すべての ID を持つ構造体に必要な合計バイト数が含まれます。

手記

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

必要条件

要件 価値
サポートされる最小クライアント Microsoft Windows 2000 以降のバージョンの Windows で使用できます。
ターゲット プラットフォーム の デスクトップ
ヘッダー setupapi.h (Setupapi.h を含む)
ライブラリ Setupapi.lib

関連項目

SetupDiEnumDriverInfo の

SetupDiGetSelectedDriver の