次の方法で共有


SetupDiGetClassDevPropertySheetsA 関数 (setupapi.h)

SetupDiGetClassDevPropertySheets 関数は、デバイス情報セットのデバイス情報要素または デバイス セットアップ クラスのプロパティ シート のハンドルを取得します。

構文

WINSETUPAPI BOOL SetupDiGetClassDevPropertySheetsA(
  [in]            HDEVINFO           DeviceInfoSet,
  [in, optional]  PSP_DEVINFO_DATA   DeviceInfoData,
  [in]            LPPROPSHEETHEADERA PropertySheetHeader,
  [in]            DWORD              PropertySheetHeaderPageListSize,
  [out, optional] PDWORD             RequiredSize,
  [in]            DWORD              PropertySheetType
);

パラメーター

[in] DeviceInfoSet

プロパティ シート ハンドルを返す デバイス情報セットへのハンドル。 DeviceInfoData がデバイス情報セット内のデバイス情報要素を指定しない場合、デバイス情報セットにはデバイス セットアップ クラスが関連付けられている必要があります。

[in, optional] DeviceInfoData

DeviceInfoSet のデバイス情報要素を指定する SP_DEVINFO_DATA 構造体へのポインター。

このパラメーターは省略可能であり、NULLできます。 このパラメーターを指定すると、SetupDiGetClassDevPropertySheets 指定したデバイスに関連付けられているプロパティ シート ハンドルを取得します。 このパラメーターが NULL場合、SetupDiGetClassDevPropertySheets は、DeviceInfoSetで指定されたデバイス セットアップ クラスに関連付けられているプロパティ シート ハンドル 取得します。

[in] PropertySheetHeader

PROPERTYSHEETHEADER 構造体へのポインター。 この構造体に関連付けられているプロパティ シート ハンドルの呼び出し元指定の配列については、「解説」セクションを参照してください。

この構造とプロパティ シートの一般的なドキュメントについては、Microsoft Windows SDK を参照してください。

[in] PropertySheetHeaderPageListSize

呼び出し元が指定したプロパティ シート ハンドルの配列が保持できるハンドルの最大数。

[out, optional] RequiredSize

指定したデバイス情報要素または指定したデバイス情報セットのデバイス セットアップ クラスに関連付けられているプロパティ シートの数を受け取る DWORD 型の変数へのポインター。 ポインターは省略可能であり、NULLできます。

[in] PropertySheetType

次のいずれかの種類のプロパティ シートを示すフラグ。

プロパティ シートの種類 意味
DIGCDP_FLAG_ADVANCED 高度なプロパティ シート。
DIGCDP_FLAG_BASIC 基本プロパティ シート。 Microsoft Windows 95 および Windows 98 でのみサポートされます。 Windows 2000 以降のバージョンの Windows では使用しないでください。
DIGCDP_FLAG_REMOTE_ADVANCED リモート コンピューター上の高度なプロパティ シート。

戻り値

この関数は、成功した場合 TRUE を返します。 それ以外の場合、関数は FALSE返します。 GetLastError 呼び出してエラー コードを取得します。

備考

PROPERTYSHEETHEADER 構造体には、関数がプロパティ シートのハンドルを返すために使用する呼び出し元指定の配列に関連付けられている 2 つのメンバーが含まれています。 phpages メンバーは、呼び出し元から指定されたプロパティ シート ハンドルの配列へのポインターであり、nPages メンバーの入力値は、ハンドル配列に既に含まれているハンドルの数を指定します。 この関数は、配列インデックスが nPagesの入力値である配列要素で始まるハンドル配列 プロパティ シート ハンドルを追加します。 この関数は、配列がいっぱいになるか、要求されたすべてのプロパティ シート ページのハンドルが配列に追加されるまで、配列に連続した順序でハンドルを追加します。 関数が返すことができるプロパティ シート ハンドルの最大数は(PropertySheetHeaderPageListSize - (nPages の入力値) に等しくなります。

要求されたすべてのプロパティ シート ページのハンドルを保持するのに十分な大きさのハンドル配列の場合、関数は次のようになります。

  • ハンドル配列にハンドルを追加します。
  • nPages 配列内のハンドルの合計数に設定します。
  • RequiredSize 返されるハンドルの数に設定します。
  • TRUE返します。
ハンドル配列が、指定されたすべてのプロパティ シート ページのハンドルを保持するのに十分な大きさでない場合、関数は次のようになります。
  • 配列が保持できる数のハンドルを追加します。
  • nPages を PropertySheetHeaderPageListSizeに設定します。
  • RequiredSize 要求されたプロパティ シート ページの合計数に設定します。 関数によって返されないハンドルの数は、(RequiredSize - PropertySheetHeaderPageListSize - (nPagesの入力値) と等しくなります。
  • エラー コードをERROR_INSUFFICIENT_BUFFERに設定します。
  • FALSE返します。

手記

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

必要条件

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

関連項目

SP_DEVINFO_DATA