IRegistryKey::QueryRegistryValues 方法 (portcls.h)
方法 QueryRegistryValues
允许调用方通过单个调用查询注册表中的多个值。
语法
NTSTATUS QueryRegistryValues(
[in] PRTL_QUERY_REGISTRY_TABLE QueryTable,
[in, optional] PVOID Context
);
参数
[in] QueryTable
指向一个或多个RTL_QUERY_REGISTRY_TABLE结构的数组的指针。 (此结构在 RtlQueryRegistryValues.) 每个结构指定调用方正在查询的注册表项的值名称和子项名称。 每个结构还包含一个函数指针,指向调用方提供的 QueryRoutine 回调, QueryRegistryValues
该方法将使用有关相应注册表项的信息调用该回调。 数组必须由 Name 成员为 NULL 的结构终止。
[in, optional] Context
这是调用方定义的上下文值。 方法 QueryRegistryValues
将此值作为调用参数传递给每个 QueryRoutine 回调。 上下文值通常是指向调用方定义的结构的指针,其中包含调用方 QueryRoutine 访问的上下文数据。 上下文值强制转换为指针类型 PVOID,但 QueryRegistryValues
该方法不执行指针验证。
返回值
QueryRegistryValues
如果调用成功处理整个 QueryTable,则返回STATUS_SUCCESS。 否则,该方法将返回相应的错误代码。 下表显示了一些可能的返回状态代码。
返回代码 | 说明 |
---|---|
|
指示传递给方法的 QueryTable 参数无效。 |
|
指示方法找不到在 某个 QueryTable 条目中指定的对象。 |
注解
此方法使用调用方提供的回调例程枚举注册表项列表的值。 如果成功,该方法在调用列表中的所有回调例程后返回 。
QueryTable 参数指向RTL_QUERY_REGISTRY_TABLE结构的数组。 此结构的第一个成员 QueryRoutine 是指向调用方提供的回调例程的函数指针。 有关详细信息,请参阅 RtlQueryRegistryValues。
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
标头 | portcls.h (包括 Portcls.h) |
IRQL | PASSIVE_LEVEL |