METODE IMFMediaEvent::GetValue (mfobjects.h)

Mengambil nilai yang terkait dengan peristiwa, jika ada. Nilai diambil sebagai struktur PROPVARIANT . Jenis data aktual dan arti nilai bergantung pada peristiwa.

Sintaks

HRESULT GetValue(
  [out] PROPVARIANT *pvValue
);

Parameter

[out] pvValue

Penunjuk ke struktur PROPVARIANT . Metode mengisi struktur ini dengan data.

Nilai kembali

Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.

Menampilkan kode Deskripsi
S_OK
Metode berhasil.

Keterangan

Sebelum memanggil metode ini, panggil PropVariantInit untuk menginisialisasi struktur PROPVARIANT . Setelah metode kembali, panggil PropVariantClear untuk membebaskan memori yang dialokasikan untuk data PROPVARIANT .

Antarmuka ini tersedia pada platform berikut jika komponen yang dapat didistribusikan ulang Windows Media Format 11 SDK diinstal:

  • Windows XP dengan Paket Layanan 2 (SP2) dan yang lebih baru.
  • Windows XP Media Center Edition 2005 dengan KB900325 (Windows XP Media Center Edition 2005) dan KB925766 (Rollup Pembaruan Oktober 2006 untuk Windows XP Media Center Edition) terinstal.

Contoh

Fungsi berikut mendapatkan nilai peristiwa jika nilainya adalah pointer IUnknown . Jika jenis PROPVARIANT tidak VT_UNKOWN, fungsi mengembalikan MF_E_INVALIDTYPE.

//  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;
}


Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header mfobjects.h (termasuk Mfidl.h)
Pustaka Mfuuid.lib

Lihat juga

IMFMediaEvent

Generator Peristiwa Media