DevCreateObjectQueryFromIdEx 函数 (devquery.h)
创建设备查询以基于指定的查询参数、扩展参数和对象 ID 检索属性。
语法
HRESULT DevCreateObjectQueryFromIdEx(
[in] DEV_OBJECT_TYPE ObjectType,
[in] PCWSTR pszObjectId,
[in] ULONG QueryFlags,
[in] ULONG cRequestedProperties,
[in, optional] const DEVPROPCOMPKEY *pRequestedProperties,
[in] ULONG cFilterExpressionCount,
[in, optional] const DEVPROP_FILTER_EXPRESSION *pFilter,
[in] ULONG cExtendedParameterCount,
[in, optional] const DEV_QUERY_PARAMETER *pExtendedParameters,
[in] PDEV_QUERY_RESULT_CALLBACK pCallback,
[in, optional] PVOID pContext,
[out] PHDEVQUERY phDevQuery
);
参数
[in] ObjectType
DEV_OBJECT_TYPE 枚举中的一个值,该值确定此查询应运行的对象类型。
[in] pszObjectId
查询应针对的特定对象的字符串标识符。
[in] QueryFlags
使用按位 OR 运算组合的 DEV_QUERY_FLAGS 值。
[in] cRequestedProperties
pRequestedProperties中提供的 DEVPROPCOMPKEY 结构的数目。 如果指定了 devQueryFlagAllProperties
[in, optional] pRequestedProperties
(可选)提供一组
如果在 QueryFlags中指定了 DevQueryFlagUpdateResults,则查询将在查询结果集中的任何对象的任何属性的值发生更改时收到通知。
DEVPROPCOMPKEY 结构的 LocaleName 字段将被忽略,必须设置为 NULL。
如果 cRequestedProperties 为 0,则必须为 NULL。
[in] cFilterExpressionCount
pFilter中提供的 DEVPROP_FILTER_EXPRESSION 结构数。
[in, optional] pFilter
(可选)提供一个由 DEVPROP_FILTER_EXPRESSION 结构构成的数组,这些结构指定哪些对象应是查询结果集的一部分的筛选条件。 如果 cFilterExpressionCount 为 0,则必须为 NULL。
[in] cExtendedParameterCount
保留供系统使用。 必须设置为 0。
[in, optional] pExtendedParameters
保留供系统使用。 必须设置为 NULL。
[in] pCallback
应将此查询的结果发送到的 PDEV_QUERY_RESULT_CALLBACK 回调函数。
[in, optional] pContext
调用方提供的上下文。 此值将传递给未修改的回调函数。
[out] phDevQuery
接收表示查询的句柄的指针。 如果 指定 DevQueryFlagsUpdateResults,则查询将接收更新,直到句柄关闭。 调用 DevCloseObjectQuery 关闭此句柄以停止查询。
返回值
如果成功创建查询,则返回S_OK;否则为适当的错误值。
言论
当客户端想要检索给定特定对象标识的数据时,请使用此函数,而不是 DevCreateObjectQuery 和筛选器。 此函数更高效。
有关详细信息,请参阅 DevCreateObjectQuery的备注部分,该部分也适用于此函数。 有关创建设备查询以基于指定的查询参数和对象 ID 检索属性的示例,请参阅 DevCreateObjectQueryFromId。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 10 版本 1809 |
支持的最低服务器 | Windows Server 2019 |
标头 | devquery.h |
库 | Onecore.lib |
DLL | Cfgmgr32.dll |