IWMDMStorage4::GetSpecifiedMetadata メソッド (mswmdm.h)
GetSpecifiedMetadata メソッドは、ストレージから 1 つ以上の特定のメタデータ プロパティを取得します。
構文
HRESULT GetSpecifiedMetadata(
[in] DWORD cProperties,
[in] LPCWSTR *ppwszPropNames,
[out] IWMDMMetaData **ppMetadata
);
パラメーター
[in] cProperties
取得するプロパティの数。
[in] ppwszPropNames
取得するプロパティ名の配列。 この配列の長さは cProperties と等しい必要があります。 アプリケーションでは、 CoTaskMemFree を使用してこのメモリを解放する必要があります。
[out] ppMetadata
取得された値を含む、返された IWMDMMetaData インターフェイス ポインターへのポインター。 呼び出し元は、このインターフェイスが終了したら、このインターフェイスを解放する必要があります。
戻り値
このメソッドは HRESULT を返します。 Windows Media デバイス マネージャーのすべてのインターフェイス メソッドは、次のいずれかのエラー コード クラスを返すことができます。
- 標準 COM エラー コード
- HRESULT 値に変換された Windows エラー コード
- Windows Media デバイス マネージャー エラー コード
注釈
このメソッドを使用すると、取得するプロパティをクライアントが制御できます。 これは IWMDMStorage3::GetMetadata よりも効率的であり、クライアントがストレージでサポートされているプロパティのサブセットのみを必要とする場合に推奨されます。
このメソッドを使用して Windows ポータブル デバイス (WPD) デバイスからデータを取得する場合、データは IPortableDeviceValues オブジェクトのバイナリ形式で返されます。 アプリケーションでは、実際のプロパティ値を取得するために、このデータをシリアル化解除する必要があります。
メソッドは成功し、指定したプロパティの一部を取得できなかった場合 (ただし、少なくとも 1 つのプロパティが取得された) 場合でも、WMDM_S_NOT_ALL_PROPERTIES_RETRIEVEDを返します。 メソッドは失敗し、指定したプロパティを取得できなかった場合はWMDM_E_NOTSUPPORTEDを返します。
1 つのプロパティを要求することは、このメソッドの特殊なケースです。 クライアントが 1 つのプロパティを要求した場合、可能なリターン コードはS_OK、E_INVALIDARG、およびWMDM_E_NOTSUPPORTEDです。 したがって、1 つのプロパティの場合、メソッドは、プロパティが正常に取得された場合にのみ成功します。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | mswmdm.h |
Library | Mssachlp.lib |