Recupero delle proprietà per più oggetti in base al formato oggetto

Oltre a un recupero bulk delle proprietà per una raccolta di identificatori di oggetto, un'applicazione può anche eseguire un recupero bulk delle proprietà per tutti gli oggetti di un tipo specifico. Come nell'esempio precedente, il recupero bulk per un determinato tipo richiede che il driver del dispositivo supporti il recupero bulk.

L'applicazione può eseguire un recupero bulk usando le interfacce descritte nella tabella seguente.

Interfaccia Descrizione
Interfaccia IPortableDeviceContent Fornisce l'accesso ai metodi specifici del contenuto.
Interfaccia IPortableDeviceKeyCollection Usato per identificare le proprietà da recuperare.
Interfaccia IPortableDeviceProperties Usato per determinare se un determinato driver supporta operazioni bulk.
Interfaccia IPortableDevicePropertiesBulk Supporta l'operazione di recupero bulk.
Interfaccia IPortableDevicePropVariantCollection Usato per archiviare gli identificatori di oggetto per l'operazione bulk.

 

La funzione ReadContentPropertiesBulkFilteringFormat nel modulo ContentProperties.cpp dell'applicazione di esempio illustra un'operazione di recupero bulk per oggetti di un determinato tipo o formato.

Il codice trovato nella funzione ReadContentPropertiesBulkFilteringFormat è quasi identico al codice trovato nella funzione ReadContentPropertiesBulk. Per una descrizione completa di questa funzione, vedere l'argomento Recupera proprietà per più oggetti .

La differenza primaria si verifica quando l'operazione viene accodata. Quando si filtra per tipo o formato, il metodo IPortableDevicePropertiesBulk::QueueGetValuesByObjectFormat viene chiamato anziché il metodo IPortableDevicePropertiesBulk::QueueGetValuesByObjectList.

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

Interfaccia IPortableDevice

Interfaccia IPortableDeviceContent

Interfaccia IPortableDeviceKeyCollection

Interfaccia IPortableDeviceProperties

Interfaccia IPortableDevicePropertiesBulk

Interfaccia IPortableDevicePropVariantCollection

Guida alla programmazione