SetupDiCreateDeviceInterfaceRegKeyA 函式 (setupapi.h)

SetupDiCreateDeviceInterfaceRegKey 函式會建立登錄機碼來儲存裝置介面的相關信息,並傳回密鑰的句柄。

語法

WINSETUPAPI HKEY SetupDiCreateDeviceInterfaceRegKeyA(
  [in]           HDEVINFO                  DeviceInfoSet,
  [in]           PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
                 DWORD                     Reserved,
  [in]           REGSAM                    samDesired,
  [in, optional] HINF                      InfHandle,
  [in, optional] PCSTR                     InfSectionName
);

參數

[in] DeviceInfoSet

裝置資訊集的句柄,其中包含要為其建立登錄機碼的介面。 裝置資訊集不得包含遠端元素。

[in] DeviceInterfaceData

指定 DeviceInfoSet 中裝置介面之SP_DEVICE_INTERFACE_DATA結構的指標。 SetupDiCreateDeviceInterface 可能會傳回此指標。

Reserved

保留的。 必須為零。

[in] samDesired

呼叫端要求建立金鑰的登錄安全性存取。 如需 REGSAM 類型的登錄安全性存取值相關信息,請參閱 Microsoft Windows SDK 檔。

[in, optional] InfHandle

開啟之 INF 檔案的句柄,其中包含要針對新建立的密鑰執行的 DDInstall 區段。 這個參數是選擇性的,而且可以是 NULL。 如果此參數不是 NULL,也必須指定 InfSectionName

[in, optional] InfSectionName

InfHandle 所指定 INF 檔案中 INF DDInstall 區段名稱的指標。 這個區段會針對新建立的金鑰執行。 這個參數是選擇性的,而且可以是 NULL。 如果指定此參數,也必須指定 InfHandle

傳回值

如果 SetupDiCreateDeviceInterfaceRegKey 成功,函式會傳回要求的登錄機碼句柄,以便儲存和擷取介面資訊。 如果 SetupDiCreateDeviceInterfaceRegKey 失敗,函式會傳回INVALID_HANDLE_VALUE。 呼叫 GetLastError 以取得擴充的錯誤資訊。

備註

此函式的呼叫端必須是 Administrators 群組的成員。

如果裝置介面的要求密鑰已經存在, SetupDiCreateDeviceInterfaceRegKey 會傳回該密鑰的句柄;否則, SetupDiCreateDeviceInterfaceRegKey 會為指定的裝置介面建立新的非卷積登錄機碼。 此函式的呼叫端可以在此密鑰中儲存裝置介面的私人設定數據。 裝置的驅動程式可以使用 IoXxx 例程來存取此金鑰。

呼叫 RegCloseKey,以關閉從此函式傳回的句柄。

對於使用版面配置檔案 (INF 版本一節LayoutFile 專案所指定的安裝) ,必須先呼叫 SetupOpenAppendInfFile (來開啟配置檔案,Windows SDK 檔) ,再呼叫 SetupDiCreateDeviceInterfaceRegKey

DeviceInfoSet 所指定的裝置信息必須只包含本機計算機上的元素。

注意

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

規格需求

需求
最低支援的用戶端 可在 Microsoft Windows 2000 和更新版本的 Windows 中使用。
目標平台 桌面
標頭 setupapi.h (包括 Setupapi.h)
程式庫 Setupapi.lib

另請參閱

SetupDiCreateDeviceInterface

SetupDiDeleteDeviceInterfaceRegKey

SetupDiOpenDeviceInterfaceRegKey