IMFAttributes::SetItem method (mfobjects.h)

Adds an attribute value with a specified key.

Syntax

HRESULT SetItem(
  [in] REFGUID        guidKey,
  [in] REFPROPVARIANT Value
);

Parameters

[in] guidKey

A GUID that identifies the value to set. If this key already exists, the method overwrites the old value.

[in] Value

A PROPVARIANT that contains the attribute value. The method copies the value. The PROPVARIANT type must be one of the types listed in the MF_ATTRIBUTE_TYPE enumeration.

Return value

The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
S_OK
The method succeeded.
E_OUTOFMEMORY
Insufficient memory.
MF_E_INVALIDTYPE
Invalid attribute type.

Remarks

This method checks whether the PROPVARIANT type is one of the attribute types defined in MF_ATTRIBUTE_TYPE, and fails if an unsupported type is used. However, this method does not check whether the PROPVARIANT is the correct type for the specified attribute GUID. (There is no programmatic way to associate attribute GUIDs with property types.) For a list of Media Foundation attributes and their data types, see Media Foundation Attributes.

This interface is available on the following platforms if the Windows Media Format 11 SDK redistributable components are installed:

  • Windows XP with Service Pack 2 (SP2) and later.
  • Windows XP Media Center Edition 2005 with KB900325 (Windows XP Media Center Edition 2005) and KB925766 (October 2006 Update Rollup for Windows XP Media Center Edition) installed.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 [desktop apps | UWP apps]
Target Platform Windows
Header mfobjects.h (include Mfidl.h)
Library Mfuuid.lib

See also

Attributes and Properties

IMFAttributes