RtlQueryRegistryValueWithFallback 函数 (ntddk.h)

使用 主句柄检索注册表项的值条目;如果未找到,请使用回退句柄。

语法

NTSYSAPI NTSTATUS RtlQueryRegistryValueWithFallback(
  [in]  HANDLE          PrimaryHandle,
  [in]  HANDLE          FallbackHandle,
  [in]  PUNICODE_STRING ValueName,
  [in]  ULONG           ValueLength,
  [Out] PULONG          ValueType,
  [out] PVOID           ValueData,
  [out] PULONG          ResultLength
);

参数

[in] PrimaryHandle

第一次用于查询值条目的键的句柄。 此句柄是通过成功调用 ZwCreateKeyZwOpenKey 创建的。

[in] FallbackHandle

如果未使用 PrimaryHandle 指定的句柄找到值,则用于查询键的句柄。

[in] ValueName

指向字符串的指针,其中包含要检索其数据的值的名称。

[in] ValueLength

指定 ValueName 字符串的大小(以字节为单位)。

[Out] ValueType

指向 ULONG 变量的指针,该变量接收所查询的值的类型。

[out] ValueData

指向接收值数据的缓冲区的指针。

[out] ResultLength

指向接收值数据大小的变量(以字节为单位)的指针。 如果返回值为STATUS_SUCCESS,则指示写入 ValueData 缓冲区的字节数。 如果调用返回STATUS_BUFFER_OVERFLOW,则指示所需的字节数。 调用方可以使用该值来确定保存数据信息所需的 ValueData 缓冲区的大小。

返回值

在成功时返回STATUS_SUCCESS,或在失败时返回相应的错误代码。

要求

要求
最低受支持的客户端 Windows 10 版本 1809
标头 ntddk.h (包括 wdm.h)
Library NtosKrnl.lib
IRQL PASSIVE_LEVEL

另请参阅

在驱动程序中使用注册表