_RegQueryValueEx

include vmm.h

LONG _RegQueryValueEx(HKEY hkey, LPTSTR lpszValueName, 
    LPDWORD lpdwReserved, LPDWORD lpdwType, LPBYTE lpbData, 
    LPDWORD lpcbData)
 

Retrieves the type and data for a specified value name associated with an open registry key. See the documentation for the Win32 function of the same name for additional information.

ERROR_KEY_DELETED
ERROR_MORE_DATA
ERROR_FILE_NOT_FOUND
ERROR_REGISTRY_IO_FAILED
ERROR_REGISTRY_CORRUPT
ERROR_BADDB

hkey
Handle of an open key or one of the predefined keys:
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
HKEY_CURRENT_CONFIG
HKEY_DYN_DATA

lpszValueName
Points to a null-terminated string containing the name of the value to be queried.
lpdwReserved
Reserved; must be NULL.
lpdwType
Address of variable that receives the type code for the value entry. This parameter can be NULL if the type is not required. The type can be any value or one of the standard values:
REG_BINARY Binary data in any form.
REG_SZ A null-terminated UNICODE or ANSI string.

lpbData
Address of buffer that receives the data for the value entry. This parameter can be NULL if the data is not required.
lpcbData
Address of variable that specifies size, in bytes, of the buffer addressed by lpbData.

Of the predefined key values, only HKEY_LOCAL_MACHINE and HKEY_DYN_DATA are available to VxDs during initialization time. The entire registry space can only be accessed after VxD initialization is complete.