共用方式為


IWMDMStorage4::GetSpecifiedMetadata 方法 (mswmdm.h)

GetSpecifiedMetadata 方法會從記憶體擷取一或多個特定的元數據屬性。

語法

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 物件中的二進位格式傳回數據。 應用程式應該取消串行化此數據,以取得實際的屬性值。

即使某些指定的屬性無法擷取 (,但) 擷取至少一個屬性,方法仍會成功並傳回WMDM_S_NOT_ALL_PROPERTIES_RETRIEVED。 如果無法擷取任何指定的屬性,方法就會失敗並傳回WMDM_E_NOTSUPPORTED。

要求單一屬性是這個方法的特殊案例。 如果用戶端要求單一屬性,可能的傳回碼會S_OK、E_INVALIDARG和WMDM_E_NOTSUPPORTED。 因此,在單一屬性的情況下,只有在成功擷取屬性時,方法才會成功。

規格需求

需求
目標平台 Windows
標頭 mswmdm.h
程式庫 Mssachlp.lib

另請參閱

在裝置上建立播放清單

IWMDMMetaData 介面

IWMDMStorage3::GetMetadata

IWMDMStorage4 介面

元數據常數