ORGetValue 函数
检索脱机注册表配置单元中指定注册表值的类型和数据。
语法
DWORD ORGetValue(
_In_ ORHKEY Handle,
_In_opt_ PCWSTR lpSubKey,
_In_opt_ PCWSTR lpValue,
_Out_opt_ PDWORD pdwType,
_Out_opt_ PVOID pvData,
_Inout_opt_ PDWORD pcbData
);
参数
-
句柄 [in]
-
脱机注册表配置单元中打开的注册表项的句柄。
-
lpSubKey [in, 可选]
-
注册表项的名称。 此键必须是 Handle 参数指定的键的子项。 此参数可以为 NULL。
键名称不区分大小写。
-
lpValue [in, 可选]
-
注册表值的名称。 如果此参数为 NULL 或空字符串“”,则函数将检索键的未命名值或默认值(如果有)的类型和数据。 有关详细信息,请参阅 注册表元素大小限制。
键不会自动具有未命名值或默认值。 未命名的值可以是任何类型的值。
值名称不区分大小写。
-
pdwType [out, 可选]
-
指向变量的指针,该变量接收指示存储在指定值中的数据类型的代码。 有关可能的类型代码的列表,请参阅 注册表值类型。 如果类型不是必需的,此参数可以为 NULL 。
-
pvData [out, 可选]
-
指向接收值数据的缓冲区的指针。 如果不需要数据,此参数可以为 NULL 。
如果数据是字符串,则该函数会检查终止 null 字符。 如果未找到,则如果缓冲区足够大,足以容纳额外的字符,则会使用 null 终止符存储字符串。 否则,函数将失败并返回ERROR_MORE_DATA。
-
印刷电路板数据 [in, out, optional]
-
指向变量的指针,该变量指定 pvData 参数指向的缓冲区的大小(以字节为单位)。 函数返回时,此变量包含复制到 pvData 的数据的大小。
仅当 pvData 为 NULL 时,印刷 板数据 参数才能为 NULL。
如果数据具有REG_SZ、REG_MULTI_SZ或REG_EXPAND_SZ类型,则此大小包括任何终止 null 字符或字符。 有关详细信息,请参阅“备注”。
如果 pvData 参数指定的缓冲区不够大,无法保存数据,则函数将返回ERROR_MORE_DATA并将所需的缓冲区大小存储在 由ERROR_MORE_DATA指向的变量中。 在这种情况下, pvData 缓冲区的内容未定义。
如果 pvData 为 NULL,而 ERROR_SUCCESS 为非 NULL,则该函数将返回,并将数据的大小(以字节为单位)存储在 由data 指向的变量中。 这使应用程序能够确定为值的数据分配缓冲区的最佳方式。
返回值
如果函数成功,则返回值为 ERROR_SUCCESS。
如果函数失败,则返回值为 Winerror.h 中定义的非零错误代码。 可以将 FormatMessage 函数与 FORMAT_MESSAGE_FROM_SYSTEM 标志一起使用,以获取错误的泛型说明。
备注
应用程序通常调用 OREnumValue 函数来确定值名称,然后调用 ORGetValue 函数来检索名称的数据。
要求
要求 | 值 |
---|---|
可再发行组件 |
Windows 脱机注册表库版本 1.0 或更高版本 |
标头 |
|
DLL |
|
另请参阅