IMFAttributes::GetItem 方法 (mfobjects.h)

检索与键关联的值。

语法

HRESULT GetItem(
  [in]      REFGUID     guidKey,
  [in, out] PROPVARIANT *pValue
);

参数

[in] guidKey

标识要检索的值的 GUID。

[in, out] pValue

指向接收值的 PROPVARIANT 的指针。 如果找到该值,该方法使用存储值的副本填充 PROPVARIANT 。 调用 PropVariantClear 以释放此方法分配的内存。 此参数可以为 NULL。 如果此参数为 NULL,该方法将搜索密钥,并在找到密钥时返回S_OK,但不复制该值。

返回值

该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。

返回代码 说明
S_OK
方法成功。
MF_E_ATTRIBUTENOTFOUND
找不到指定的键。

注解

如果安装了 Windows Media Format 11 SDK 可再发行组件,则此接口在以下平台上可用:

  • Windows XP with Service Pack 2 (SP2) 及更高版本。
  • Windows XP Media Center Edition 2005 KB900325 (windows XP Media Center Edition 2005) 和KB925766 (2006 年 10 月 Windows XP Media Center Edition 更新汇总) 安装。

示例

以下示例将属性从一个属性存储复制到另一个属性存储区。

HRESULT CopyAttribute(IMFAttributes *pFrom, IMFAttributes *pTo, REFGUID guidKey)
{
    PROPVARIANT val;

    HRESULT hr = pFrom->GetItem(guidKey, &val);

    if (SUCCEEDED(hr))
    {
        hr = pTo->SetItem(guidKey, val);
        PropVariantClear(&val);
    }
    else if (hr == MF_E_ATTRIBUTENOTFOUND)
    {
        hr = S_OK;
    }
    return hr;
}

要求

要求
最低受支持的客户端 Windows Vista [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2008 [桌面应用 | UWP 应用]
目标平台 Windows
标头 mfobjects.h (包括 Mfidl.h)
Library Mfuuid.lib

另请参阅

特性和属性

IMFAttributes