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) |