IPortableDevicePropertiesBulk::QueueGetValuesByObjectFormat 方法 (portabledeviceapi.h)
QueueGetValuesByObjectFormat 接口对设备上特定格式的对象属性的请求进行排队。
语法
HRESULT QueueGetValuesByObjectFormat(
[in] REFGUID pguidObjectFormat,
[in] LPCWSTR pszParentObjectID,
[in] const DWORD dwDepth,
[in] IPortableDeviceKeyCollection *pKeys,
[in] IPortableDevicePropertiesBulkCallback *pCallback,
[out] GUID *pContext
);
参数
[in] pguidObjectFormat
指向指定对象格式的 GUID 的指针。 仅查询此类型的对象。
[in] pszParentObjectID
指向以 null 结尾的字符串的指针,该字符串包含应开始搜索的父对象的对象 ID。 若要搜索设备上的所有对象, 请指定WPD_DEVICE_OBJECT_ID。
[in] dwDepth
要搜索父级下方的最大深度,其中 1 表示仅直接子级。 此数字大于实际级别数是可以接受的。 若要搜索任意深度,请指定0xFFFFFFFF
[in] pKeys
指向包含要检索的属性的 IPortableDeviceKeyCollection 接口的指针。 有关 Windows 可移植设备定义的属性列表,请参阅 属性和属性。 指定 NULL 以指示指定格式中的所有属性。
[in] pCallback
指向应用程序实现的 IPortableDevicePropertiesBulkCallback 接口的指针,该接口将在检索信息时接收信息。
[out] pContext
指向 GUID 的指针,该 GUID 将用于启动、取消或标识 IPortableDevicePropertiesBulkCallback 回调(如果已实现)。
返回值
该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。
返回代码 | 说明 |
---|---|
|
操作已成功排队。 |
注解
如果为 pguidObjectFormat 参数指定WPD_OBJECT_FORMAT_ALL,此方法将返回设备上所有对象的属性。
如果将 pszParentObjectID 参数设置为空字符串 (“”) ,则该方法将执行依赖于 dwDepth 参数的搜索,如下表所述。
dwDepth | 方法返回 |
0 | 无结果 |
1 | 仅指定设备的值。 |
2 | 指定设备和在该设备上找到的所有功能对象的值。 |
如果 pszParentObjectID 参数设置为 WPD_DEVICE_OBJECT_ID,该方法将执行依赖于 dwDepth 参数的搜索,如下表所述。
dwDepth | 方法返回 |
0 | 仅指定设备的值。 |
1 | 指定设备和在该设备上找到的所有功能对象的值。 |
在应用程序调用 Start 之前,不会启动排队的请求。 有关如何使用此方法的详细信息,请参阅 IPortableDevicePropertiesBulk 接口。
由于性能问题,当 pKeys 参数为 NULL 时,某些设备可能不会返回完整的属性列表。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | portabledeviceapi.h |
Library | PortableDeviceGUIDs.lib |