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

注意

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

要件

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

こちらもご覧ください

SP_DEVINFO_DATA