Freigeben über


IMFMediaEvent::GetValue-Methode (mfobjects.h)

Ruft ggf. den dem Ereignis zugeordneten Wert ab. Der Wert wird als PROPVARIANT-Struktur abgerufen. Der tatsächliche Datentyp und die Bedeutung des Werts hängen vom Ereignis ab.

Syntax

HRESULT GetValue(
  [out] PROPVARIANT *pvValue
);

Parameter

[out] pvValue

Zeiger auf eine PROPVARIANT-Struktur . Die -Methode füllt diese Struktur mit den Daten aus.

Rückgabewert

Die Methode gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.

Rückgabecode BESCHREIBUNG
S_OK
Die Methode wurde erfolgreich ausgeführt.

Hinweise

Rufen Sie vor dem Aufrufen dieser Methode PropVariantInit auf, um die PROPVARIANT-Struktur zu initialisieren. Nachdem die Methode zurückgegeben wurde, rufen Sie PropVariantClear auf, um den Arbeitsspeicher freizugeben, der für die PROPVARIANT-Daten zugewiesen wurde.

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.

Beispiele

Die folgende Funktion ruft den Ereigniswert ab, wenn der Wert ein IUnknown-Zeiger ist. Wenn der PROPVARIANT-Typ nicht VT_UNKOWN ist, gibt die Funktion MF_E_INVALIDTYPE zurück.

//  Gets an IUnknown pointer from an IMFMediaEvent event and queries 
//  the pointer for a specified interface.
//
//  NOTE: Applies only to events that contain IUnknown pointers.
//        Otherwise, the function returns MF_E_INVALIDTYPE.

template <class Q>
HRESULT GetEventObject(IMFMediaEvent *pEvent, Q **ppObject)
{
    *ppObject = NULL;   // zero output

    PROPVARIANT var;
    HRESULT hr = pEvent->GetValue(&var);
    if (SUCCEEDED(hr))
    {
        if (var.vt == VT_UNKNOWN)
        {
            hr = var.punkVal->QueryInterface(ppObject);
        }
        else
        {
            hr = MF_E_INVALIDTYPE;
        }
        PropVariantClear(&var);
    }
    return hr;
}


Anforderungen

Anforderung Wert
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)
Bibliothek Mfuuid.lib

Weitere Informationen

IMFMediaEvent

Medienereignisgeneratoren