SHRegGetValueFromHKCUHKLM 函数 (shlwapi.h)
[不再支持此函数。]
从注册表获取指定信息。 此函数将为指定子项中请求的信息检查 HKEY_CURRENT_USER。 如果HKEY_CURRENT_USER子树下不存在信息,函数会检查HKEY_LOCAL_MACHINE子树中是否有相同的信息。
语法
LSTATUS SHRegGetValueFromHKCUHKLM(
[in] PCWSTR pwszKey,
[in] PCWSTR pwszValue,
[in] SRRF srrfFlags,
[out] DWORD *pdwType,
[in] void *pvData,
[in, out] DWORD *pcbData
);
参数
[in] pwszKey
类型: PCWSTR
指向以 null 结尾的 Unicode 字符串的指针,该字符串指定注册表项的路径。
[in] pwszValue
类型: PCWSTR
指向以 null 结尾的 Unicode 字符串的指针,该字符串指定键值。 此值可以为 NULL,在这种情况下,将从默认值检索数据。
[in] srrfFlags
类型: SRRF
SRRF 标志常量。 如果使用多个标志,则可以使用按位 OR 将它们组合在一起。 这些标志用于限制返回的数据类型。 此值不能为 0。
[out] pdwType
类型: DWORD*
当此函数返回时,包含指向 DWORD 的指针,该 DWORD 接收指示存储在指定值中的数据类型的代码。 如果不需要任何类型信息,则可以将其设置为 NULL 。 如果此值不为 NULL,并且尚未设置SRRF_NOEXPAND标志,则REG_EXPAND_SZ的数据类型将作为REG_SZ返回,因为它们会在此方法中自动展开。
[in] pvData
类型: LPCVOID
指向包含值数据的缓冲区的指针。 如果不需要数据,此参数可以为 NULL 。 此值必须包含输入时 pvData 缓冲区的大小。 如果 pvData (为 NULL ,或者 pvData 不为 NULL,但缓冲区太小,无法) 保存注册表数据,则在退出时,它将包含保存注册表数据所需的大小。
[in, out] pcbData
类型: DWORD*
当此函数返回时,包含指向数据大小的指针(以字节为单位)。
返回值
类型: LONG
如果成功,此函数将返回ERROR_SUCCESS和请求的所有输出参数。 如果函数由于提供的非 NULL pvData 中的空间不足而失败,则返回ERROR_MORE_DATA。 在这种情况下,只有 pdwType 和 pvcData 可能包含有效数据, pvData 将不确定。 否则, 将返回 Winerror.h 中定义的非零错误代码。 可以将 FormatMessage 函数与 FORMAT_MESSAGE_FROM_SYSTEM 标志一起使用,以检索错误的一般说明。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | shlwapi.h |
DLL | Shlwapi.dll |