2 out of 4 rated this helpful - Rate this topic

SHGetValue function

Applies to: desktop apps only

Retrieves a registry value.

Syntax

LSTATUS SHGetValue(
  __in         HKEY hkey,
  __in_opt     LPCTSTR pszSubKey,
  __in_opt     LPCTSTR pszValue,
  __out_opt    LPDWORD pdwType,
  __out_opt    LPVOID pvData,
  __inout_opt  LPDWORD pcbData
);

Parameters

hkey [in]

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 [in, optional]

Type: LPCTSTR

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

pszValue [in, optional]

Type: LPCTSTR

The address of the value.

pdwType [out, optional]

Type: LPDWORD

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

pvData [out, optional]

Type: LPVOID

The address of the destination data buffer.

pcbData [in, out, optional]

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

Minimum supported server

Windows 2000 Server

Header

Shlwapi.h

Library

Shlwapi.lib

DLL

Shlwapi.dll (version 4.71 or later)

Unicode and ANSI names

SHGetValueW (Unicode) and SHGetValueA (ANSI)

 

 

Send comments about this topic to Microsoft

Build date: 3/7/2012

Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ