SetupDiGetClassDevPropertySheetsW 関数 (setupapi.h)
SetupDiGetClassDevPropertySheets 関数は、デバイス情報要素のプロパティ シートまたはデバイス情報セットのデバイス セットアップ クラスのハンドルを取得します。
構文
WINSETUPAPI BOOL SetupDiGetClassDevPropertySheetsW(
[in] HDEVINFO DeviceInfoSet,
[in, optional] PSP_DEVINFO_DATA DeviceInfoData,
[in] LPPROPSHEETHEADERW 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 ヘッダーでは、SetupDiGetClassDevPropertySheets をエイリアスとして定義します。これは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | setupapi.h (Setupapi.h を含む) |
Library | Setupapi.lib |