Recuperar propiedades para varios objetos por formato de objeto

Además de una recuperación masiva de propiedades para una colección de identificadores de objeto, una aplicación también puede realizar una recuperación masiva de propiedades para todos los objetos de un tipo determinado. Como en el ejemplo anterior, la recuperación masiva de un tipo determinado requiere que el controlador de dispositivo admita recuperaciones masivas.

La aplicación puede realizar una recuperación masiva mediante las interfaces descritas en la tabla siguiente.

Interfaz Descripción
IPortableDeviceContent (Interfaz) Proporciona acceso a los métodos específicos del contenido.
IPortableDeviceKeyCollection (Interfaz) Se usa para identificar las propiedades que se van a recuperar.
IPortableDeviceProperties (Interfaz) Se usa para determinar si un controlador determinado admite operaciones masivas.
IPortableDevicePropertiesBulk (Interfaz) Admite la operación de recuperación masiva.
IPortableDevicePropVariantCollection (Interfaz) Se usa para almacenar los identificadores de objeto para la operación masiva.

 

La función ReadContentPropertiesBulkFilteringFormat del módulo ContentProperties.cpp de la aplicación de ejemplo muestra una operación de recuperación masiva para objetos de un tipo o formato concretos.

El código encontrado en la función ReadContentPropertiesBulkFilteringFormat es casi idéntico al código encontrado en la función ReadContentPropertiesBulk. (Vea el tema Recuperación de propiedades para varios objetos para obtener una descripción completa de esta función).

La única diferencia principal se produce cuando la operación se pone en cola. Al filtrar por tipo o formato, se llama al método IPortableDevicePropertiesBulk::QueueGetValuesByObjectFormat en lugar del método IPortableDevicePropertiesBulk::QueueGetValuesByObjectList .

hr = pPropertiesBulk->QueueGetValuesByObjectFormat(WPD_OBJECT_FORMAT_WMA,
                                                   WPD_DEVICE_OBJECT_ID,
                                                   100,
                                                   pPropertiesToRead,
                                                   pCallback,
                                                   &guidContext);

IPortableDevice (Interfaz)

IPortableDeviceContent (Interfaz)

IPortableDeviceKeyCollection (Interfaz)

IPortableDeviceProperties (Interfaz)

IPortableDevicePropertiesBulk (Interfaz)

IPortableDevicePropVariantCollection (Interfaz)

Guía de programación