SetupDiOpenClassRegKeyExA function (setupapi.h)
The SetupDiOpenClassRegKeyEx function opens the device setup class registry key, the device interface class registry key, or a specific class's subkey. This function opens the specified key on the local computer or on a remote computer.
Syntax
WINSETUPAPI HKEY SetupDiOpenClassRegKeyExA(
[in, optional] const GUID *ClassGuid,
[in] REGSAM samDesired,
[in] DWORD Flags,
[in, optional] PCSTR MachineName,
PVOID Reserved
);
Parameters
[in, optional] ClassGuid
A pointer to the GUID of the class whose registry key is to be opened. This parameter is optional and can be NULL. If this parameter is NULL, the root of the class tree (HKLM\SYSTEM\CurrentControlSet\Control\Class) is opened.
[in] samDesired
The registry security access for the key to be opened. For information about registry security access values of type REGSAM, see the Microsoft Windows SDK documentation.
[in] Flags
The type of registry key to be opened, which is specified by one of the following:
DIOCR_INSTALLER
Open a setup class key. If ClassGuid is NULL, open the root key of the class installer branch.
DIOCR_INTERFACE
Open an interface class key. If ClassGuid is NULL, open the root key of the interface class branch.
[in, optional] MachineName
Optionally points to a string that contains the name of a remote computer on which to open the specified key.
Caution
Using this function to access remote machines is not supported beginning with Windows 8 and Windows Server 2012, as this functionality has been removed.
Reserved
Reserved. Must be NULL.
Return value
SetupDiOpenClassRegKeyEx returns a handle to an opened registry key where information about this setup class can be stored/retrieved.
If the function fails, it returns INVALID_HANDLE_VALUE. To get extended error information, call GetLastError.
Remarks
Depending on the value that is passed in the samDesired parameter, it might be necessary for the caller of this function to be a member of the Administrators group.
SetupDiOpenClassRegKeyEx does not create a registry key if it does not already exist.
Callers of this function must close the handle returned from this function by calling RegCloseKey.
Note
The setupapi.h header defines SetupDiOpenClassRegKeyEx as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available in Microsoft Windows 2000 and later versions of Windows. |
Target Platform | Desktop |
Header | setupapi.h (include Setupapi.h) |
Library | Setupapi.lib |