shEnumValueW 函数 (shlwapi.h)

枚举指定打开的注册表项的值。

语法

LSTATUS SHEnumValueW(
  [in]                HKEY    hkey,
  [in]                DWORD   dwIndex,
                      PWSTR   pszValueName,
  [in, out, optional] LPDWORD pcchValueName,
  [out, optional]     LPDWORD pdwType,
                      void    *pvData,
  [in, out, optional] LPDWORD pcbData
);

参数

[in] hkey

类型: HKEY

当前打开的键或以下任何预定义值的句柄。

HKEY_CLASSES_ROOT

HKEY_CURRENT_CONFIG

HKEY_CURRENT_USER

HKEY_LOCAL_MACHINE

HKEY_PERFORMANCE_DATA

HKEY_USERS

[in] dwIndex

类型:DWORD

要检索的值的索引。 对于第一次调用,此参数应为零,对于后续调用,此参数应递增。

pszValueName

类型: LPTSTR

接收枚举值名称的字符缓冲区的地址。 此缓冲区的大小在 pcchValueName 中指定。

[in, out, optional] pcchValueName

类型: LPDWORD

输入时包含 pszValueName 处缓冲区大小的 DWORD 地址(以字符为单位)。 退出时,它包含复制到 pszValueName 的字符数。

[out, optional] pdwType

类型: LPDWORD

接收值的数据类型的 DWORD 的地址。 这些值与 RegEnumValuelpType 参数下所述的值相同。

pvData

类型: LPVOID

接收值条目数据的缓冲区的地址。 此缓冲区的大小在 data 中指定。 如果不需要数据,此参数可以为 NULL

[in, out, optional] pcbData

类型: LPDWORD

输入时包含 pvData 处缓冲区大小的 DWORD 地址(以字节为单位)。 退出时,它包含复制到 pvData 的字节数。

返回值

类型: LSTATUS

如果成功,则返回ERROR_SUCCESS,否则返回 Winerror.h 中定义的非零错误代码。 可以将 FormatMessage 函数与 FORMAT_MESSAGE_FROM_SYSTEM 标志一起使用,以检索错误的文本说明。

注解

注意

shlwapi.h 标头将 SHEnumValue 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

要求
最低受支持的客户端 Windows 2000 专业版、Windows XP [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 shlwapi.h
Library Shlwapi.lib
DLL Shlwapi.dll (4.71 或更高版本)