SHRegEnumUSValueW function (shlwapi.h)
Enumerates the values of the specified registry subkey in a user-specific subtree (HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE).
LSTATUS SHRegEnumUSValueW( [in] HUSKEY hUSkey, [in] DWORD dwIndex, [out] LPWSTR pszValueName, [in, out] LPDWORD pcchValueName, [out, optional] LPDWORD pdwType, [out, optional] void *pvData, [in, out, optional] LPDWORD pcbData, [in] SHREGENUM_FLAGS enumRegFlags );
A handle to a currently open registry subkey. The subkey must have been opened with the KEY_SET_VALUE access right. For more information, see Registry Key Security and Access Rights.
This handle can be obtained through the SHRegOpenUSKey function.
The index of the value to retrieve. This parameter should be zero for the first call and incremented for subsequent calls.
A pointer to a character buffer that receives the enumerated value name. The size of this buffer is specified in pcchValueNameLen.
[in, out] pcchValueName
A pointer to a DWORD that, on entry, contains the size of the buffer at pszValueName, in characters. On exit, this contains the number of characters that were copied to pszValueName.
[out, optional] pdwType
A pointer to a DWORD that receives the data type of the value. These are the same values as those described under the lpType parameter of RegEnumValue.
[out, optional] pvData
A pointer to a buffer that receives the data for the value entry. The size of this buffer is specified in pcbData. This parameter can be NULL if the data is not required.
[in, out, optional] pcbData
A pointer to a DWORD that, on entry, contains the size of the buffer at pvData. On exit, this contains the number of bytes that were copied to pvData.
One of the SHREGENUM_FLAGS that specifies the base key in which the enumeration should take place.
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 textual description of the error.
The shlwapi.h header defines SHRegEnumUSValue as an alias which 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 not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.
|Minimum supported client||Windows 2000 Professional, Windows XP [desktop apps only]|
|Minimum supported server||Windows 2000 Server [desktop apps only]|
|DLL||Shlwapi.dll (version 4.71 or later)|