SHGetValueA function

Retrieves a registry value.

Syntax

LSTATUS SHGetValueA(
  HKEY   hkey,
  LPCSTR pszSubKey,
  LPCSTR pszValue,
  DWORD  *pdwType,
  void   *pvData,
  DWORD  *pcbData
);

Parameters

hkey

Type: HKEY

A handle to the currently open key, or any of the following predefined values.

HKEY_CLASSES_ROOT

HKEY_CURRENT_CONFIG

HKEY_CURRENT_USER

HKEY_LOCAL_MACHINE

HKEY_PERFORMANCE_DATA

HKEY_USERS

pszSubKey

Type: LPCTSTR

The address of a null-terminated string that specifies the name of the subkey from which to retrieve the value.

pszValue

Type: LPCTSTR

The address of the value.

pdwType

Type: LPDWORD

The type of value. For more information, see Registry Data Types.

pvData

Type: LPVOID

The address of the destination data buffer.

pcbData

Type: LPDWORD

The size of the destination data buffer.

Return Value

Type: LSTATUS

Returns ERROR_SUCCESS if successful, or a nonzero error code defined in Winerror.h otherwise. You can use the FormatMessage function with the FORMAT_MESSAGE_FROM_SYSTEM flag to retrieve a generic description of the error.

Remarks

If your application must set/retrieve a series of values in the same key, it is better to open the key once and set/retrieve the values with the regular Microsoft Win32 registry functions rather than use this function repeatedly.

Requirements

   
Minimum supported client Windows 2000 Professional, Windows XP [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header shlwapi.h
Library Shlwapi.lib
DLL Shlwapi.dll (version 4.71 or later)