Freigeben über


IMFAttributes-Schnittstelle (mfobjects.h)

Bietet eine generische Möglichkeit zum Speichern von Schlüssel-Wert-Paaren in einem -Objekt. Die Schlüssel sind GUIDs, und die Werte können einen der folgenden Datentypen aufweisen: UINT32, UINT64, Double, GUID, Breitzeichenzeichenfolge, Bytearray oder IUnknown-Zeiger . Die Standardimplementierung dieser Schnittstelle enthält eine Threadsperre, während Werte hinzugefügt, gelöscht oder abgerufen werden.

Eine Liste der vordefinierten Attribut-GUIDsfinden Sie unter Media Foundation-Attribute. Jede Attribut-GUID weist einen erwarteten Datentyp auf. Die verschiedenen "set"-Methoden in IMFAttributes überprüfen den Typ nicht anhand der Attribut-GUID. Es liegt in der Verantwortung der Anwendung, den richtigen Typ für das Attribut festzulegen.

Um einen leeren Attributspeicher zu erstellen, rufen Sie MFCreateAttributes auf.

Vererbung

Die IMFAttributes-Schnittstelle erbt von der IUnknown-Schnittstelle . IMFAttributes verfügt auch über folgende Membertypen:

Methoden

Die IMFAttributes-Schnittstelle verfügt über diese Methoden.

 
IMFAttributes::Compare

Vergleicht die Attribute dieses Objekts mit den Attributen eines anderen Objekts.
IMFAttributes::CompareItem

Fragt ab, ob ein gespeicherter Attributwert einem angegebenen PROPVARIANT entspricht.
IMFAttributes::CopyAllItems

Kopiert alle Attribute aus diesem Objekt in einen anderen Attributspeicher.
IMFAttributes::D eleteAllItems

Entfernt alle Schlüssel-Wert-Paare aus der Attributliste des Objekts.
IMFAttributes::D eleteItem

Entfernt ein Schlüssel-Wert-Paar aus der Attributliste des Objekts.
IMFAttributes::GetAllocatedBlob

Ruft ein Bytearray ab, das einem Schlüssel zugeordnet ist. Diese Methode ordnet den Arbeitsspeicher für das Array zu.
IMFAttributes::GetAllocatedString

Ruft eine Breitzeichenzeichenfolge ab, die einem Schlüssel zugeordnet ist. Diese Methode ordnet den Arbeitsspeicher für die Zeichenfolge zu.
IMFAttributes::GetBlob

Ruft ein Bytearray ab, das einem Schlüssel zugeordnet ist. Diese Methode kopiert das Array in einen vom Aufrufer zugewiesenen Puffer.
IMFAttributes::GetBlobSize

Ruft die Länge eines Bytearrays ab, das einem Schlüssel zugeordnet ist.
IMFAttributes::GetCount

Ruft die Anzahl der Attribute ab, die für dieses Objekt festgelegt sind.
IMFAttributes::GetDouble

Ruft einen double-Wert ab, der einem Schlüssel zugeordnet ist.
IMFAttributes::GetGUID

Ruft einen GUID-Wert ab, der einem Schlüssel zugeordnet ist.
IMFAttributes::GetItem

Ruft den einem Schlüssel zugeordneten Wert ab.
IMFAttributes::GetItemByIndex

Ruft ein Attribut am angegebenen Index ab.
IMFAttributes::GetItemType

Ruft den Datentyp des Einem Schlüssel zugeordneten Werts ab.
IMFAttributes::GetString

Ruft eine Breitzeichenzeichenfolge ab, die einem Schlüssel zugeordnet ist.
IMFAttributes::GetStringLength

Ruft die Länge eines Zeichenfolgenwerts ab, der einem Schlüssel zugeordnet ist.
IMFAttributes::GetUINT32

Ruft einen UINT32-Wert ab, der einem Schlüssel zugeordnet ist.
IMFAttributes::GetUINT64

Ruft einen UINT64-Wert ab, der einem Schlüssel zugeordnet ist.
IMFAttributes::GetUnknown

Ruft einen Schnittstellenzeiger ab, der einem Schlüssel zugeordnet ist.
IMFAttributes::LockStore

Sperrt den Attributspeicher, sodass kein anderer Thread darauf zugreifen kann.
IMFAttributes::SetBlob

Ordnet einem Schlüssel ein Bytearray zu.
IMFAttributes::SetDouble

Ordnet einem Schlüssel einen Double-Wert zu.
IMFAttributes::SetGUID

Ordnet einen GUID-Wert einem Schlüssel zu.
IMFAttributes::SetItem

Fügt einen Attributwert mit einem angegebenen Schlüssel hinzu.
IMFAttributes::SetString

Ordnet eine Breitzeichenzeichenfolge einem Schlüssel zu.
IMFAttributes::SetUINT32

Ordnet einen UINT32-Wert einem Schlüssel zu.
IMFAttributes::SetUINT64

Ordnet einen UINT64-Wert einem Schlüssel zu.
IMFAttributes::SetUnknown

Ordnet einen IUnknown-Zeiger einem Schlüssel zu.
IMFAttributes::UnlockStore

Entsperrt den Attributspeicher nach einem Aufruf der IMFAttributes::LockStore-Methode. Während das Objekt entsperrt ist, können mehrere Threads auf die Attribute des Objekts zugreifen.

Hinweise

Diese Schnittstelle ist auf den folgenden Plattformen verfügbar, wenn die verteilbaren Windows Media Format 11 SDK-Komponenten installiert sind:

  • Windows XP mit Service Pack 2 (SP2) und höher.
  • Windows XP Media Center Edition 2005 mit KB900325 (Windows XP Media Center Edition 2005) und KB925766 (Updaterollup für Windows XP Media Center Edition) vom Oktober 2006) installiert.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile mfobjects.h (include Mfidl.h)

Weitere Informationen

Attribute und Eigenschaften

Media Foundation-Schnittstellen