SetupDiOpenClassRegKeyExA 函式 (setupapi.h)

SetupDiOpenClassRegKeyEx 函式會開啟裝置安裝類別登錄機碼、裝置介面類別登錄機碼或特定類別的子機碼。 此函式會在本機電腦或遠端電腦上開啟指定的金鑰。

語法

WINSETUPAPI HKEY SetupDiOpenClassRegKeyExA(
  [in, optional] const GUID *ClassGuid,
  [in]           REGSAM     samDesired,
  [in]           DWORD      Flags,
  [in, optional] PCSTR      MachineName,
                 PVOID      Reserved
);

參數

[in, optional] ClassGuid

要開啟其登錄機碼之類別之 GUID 的指標。 這個參數是選擇性的,而且可以是 NULL。 如果此參數為 NULL,則會開啟 HKLM\SYSTEM\CurrentControlSet\Control\Class (類別樹狀結構的根目錄) 。

[in] samDesired

要開啟金鑰的登錄安全性存取。 如需 REGSAM 類型登錄安全性存取值的相關信息,請參閱 Microsoft Windows SDK 檔。

[in] Flags

要開啟的登錄機碼類型,由下列其中一項指定:

DIOCR_INSTALLER

開啟安裝類別索引鍵。 如果 ClassGuidNULL,請開啟類別安裝程式分支的根密鑰。

DIOCR_INTERFACE

開啟介面類別索引鍵。 如果 ClassGuidNULL,請開啟介面類別分支的根索引鍵。

[in, optional] MachineName

選擇性地指向字串,其中包含要開啟指定索引鍵之遠端計算機的名稱。

警告

從 Windows 8 和 Windows Server 2012 開始,不支援使用此函式來存取遠端計算機,因為此功能已移除。

Reserved

保留的。 必須是 NULL

傳回值

SetupDiOpenClassRegKeyEx 會傳回開啟之登錄機碼的句柄,其中可以儲存/擷取此安裝類別的相關信息。

如果函式失敗,它會傳回INVALID_HANDLE_VALUE。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

根據在 samDesired 參數中傳遞的值,此函式的呼叫端可能需要成為 Administrators 群組的成員。

SetupDiOpenClassRegKeyEx 如果登錄機碼不存在,就不會建立登錄機碼。

此函式的呼叫端必須藉由呼叫 RegCloseKey 來關閉從此函式傳回的句柄。

注意

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

規格需求

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

另請參閱

SetupDiCreateDeviceInterfaceRegKey

SetupDiOpenDevRegKey