アプリケーションでは、オブジェクト識別子のコレクションのプロパティの一括取得に加えて、特定の型のすべてのオブジェクトに対してプロパティの一括取得を実行することもできます。 前の例のように、特定の種類の一括取得では、デバイス ドライバーで一括取得がサポートされている必要があります。
アプリケーションは、次の表で説明するインターフェイスを使用して一括取得を実行できます。
| インターフェイス | 説明 |
|---|---|
| IPortableDeviceContent インターフェイス | コンテンツ固有のメソッドへのアクセスを提供します。 |
| IPortableDeviceKeyCollection インターフェイス | 取得するプロパティを識別するために使用されます。 |
| IPortableDeviceProperties インターフェイス | 特定のドライバーが一括操作をサポートしているかどうかを判断するために使用されます。 |
| IPortableDevicePropertiesBulk インターフェイス | 一括取得操作をサポートします。 |
| IPortableDevicePropVariantCollection インターフェイス | 一括操作のオブジェクト識別子を格納するために使用します。 |
サンプル アプリケーションの ContentProperties.cpp モジュールの ReadContentPropertiesBulkFilteringFormat 関数は、特定の型または形式のオブジェクトに対する一括取得操作を示しています。
ReadContentPropertiesBulkFilteringFormat 関数にあるコードは、ReadContentPropertiesBulk 関数のコードとほぼ同じです。 (この関数の完全な説明については、「 複数のオブジェクトのプロパティの取得 」トピックを参照してください)。
1 つの主な違いは、操作がキューに入ったときに発生します。 型または形式でフィルター処理する場合、 IPortableDevicePropertiesBulk::QueueGetValuesByObjectFormat メソッドは 、IPortableDevicePropertiesBulk::QueueGetValuesByObjectList メソッドの代わりに呼び出されます。
hr = pPropertiesBulk->QueueGetValuesByObjectFormat(WPD_OBJECT_FORMAT_WMA,
WPD_DEVICE_OBJECT_ID,
100,
pPropertiesToRead,
pCallback,
&guidContext);
関連トピック