共用方式為


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

SP_DEVINFO_DATA 結構的指標,指定 DeviceInfoSet 中的裝置信息專案。

這個參數是選擇性的,而且可以 NULL。 如果指定此參數,SetupDiGetClassDevPropertySheets 擷取與指定裝置相關聯的屬性表句柄。 如果此參數 NULLSetupDiGetClassDevPropertySheets 會擷取與 deviceInfoSet中指定的裝置安裝類別相關聯的屬性表句柄。

[in] PropertySheetHeader

PROPERTYSHEETHEADER 結構的指標。 如需與這個結構相關聯之屬性表句柄陣列的相關信息,請參閱<<備註> 一節。

如需此結構和屬性表的詳細資訊,請參閱 windows SDK Microsoft。

[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 結構包含兩個成員,這些成員與函式用來傳回屬性表句柄的呼叫端提供的數位相關聯。 phpages 成員是屬性表句柄呼叫端提供陣列的指標,而 nPages 成員的輸入值會指定句柄陣列中包含的句柄數目。 函式會將屬性表句柄新增至句柄陣列,從數位元素開始,其陣列索引是 nPages 的輸入值。 函式會依連續順序將句柄加入數位,直到數位已滿或所有要求之屬性表頁面的句柄都已加入數位為止。 函式可傳回的屬性表句柄數目上限等於 (PropertySheetHeaderPageListSize - (nPages的輸入值) 。

如果句柄數位夠大,足以保存所有要求之屬性表頁面的句柄,則函式:

  • 將句柄加入句柄陣列。
  • nPages 設定為陣列中的句柄總數。
  • RequiredSize 設定為傳回的句柄數目。
  • 傳回 true
如果句柄陣列不夠大,無法容納所有指定之屬性表頁面的句柄,則函式:
  • 新增陣列所能保存的句柄數目。
  • 將 nPages 設定為 PropertySheetHeaderPageListSize
  • 將 requiredSize 設定為所要求的屬性表頁面總數。 函式未傳回的句柄數目等於 (RequiredSize - PropertySheetHeaderPageListSize - (nPages的輸入值))。
  • 將錯誤碼設定為ERROR_INSUFFICIENT_BUFFER。
  • 傳回 FALSE

注意

setupapi.h 標頭會根據 UNICODE 預處理器常數的定義,將 SetupDiGetClassDevPropertySheets 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Microsoft Windows 2000 和更新版本的 Windows 中提供。
目標平臺 桌面
標頭 setupapi.h (包括 Setupapi.h)
連結庫 Setupapi.lib

另請參閱

SP_DEVINFO_DATA