Compartilhar via


Método IMFMediaEvent::GetValue (mfobjects.h)

Recupera o valor associado ao evento, se houver. O valor é recuperado como uma estrutura PROPVARIANT . O tipo de dados real e o significado do valor dependem do evento.

Sintaxe

HRESULT GetValue(
  [out] PROPVARIANT *pvValue
);

Parâmetros

[out] pvValue

Ponteiro para uma estrutura PROPVARIANT . O método preenche essa estrutura com os dados.

Retornar valor

O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.

Comentários

Antes de chamar esse método, chame PropVariantInit para inicializar a estrutura PROPVARIANT . Depois que o método retornar, chame PropVariantClear para liberar a memória alocada para os dados PROPVARIANT .

Essa interface estará disponível nas seguintes plataformas se os componentes redistribuíveis do SDK do Windows Media Format 11 estiverem instalados:

  • Windows XP com Service Pack 2 (SP2) e posterior.
  • Windows XP Media Center Edition 2005 com KB900325 (Windows XP Media Center Edition 2005) e KB925766 (pacote cumulativo de atualizações de outubro de 2006 para Windows XP Media Center Edition) instalados.

Exemplos

A função a seguir obtém o valor do evento se o valor for um ponteiro IUnknown . Se o tipo PROPVARIANT não for VT_UNKOWN, a função retornará 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;
}


Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho mfobjects.h (inclua Mfidl.h)
Biblioteca Mfuuid.lib

Confira também

IMFMediaEvent

Geradores de Eventos de Mídia