Condividi tramite


Metodo IMediaEvent::GetEvent (control.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il GetEvent metodo recupera la notifica dell'evento successiva dalla coda di eventi.

Sintassi

HRESULT GetEvent(
  [out] long     *lEventCode,
  [out] LONG_PTR *lParam1,
  [out] LONG_PTR *lParam2,
  [in]  long     msTimeout
);

Parametri

[out] lEventCode

Puntatore a una variabile che riceve il codice dell'evento.

[out] lParam1

Puntatore a una variabile che riceve il primo parametro dell'evento.

[out] lParam2

Puntatore a una variabile che riceve il secondo parametro dell'evento.

[in] msTimeout

Intervallo di timeout, espresso in millisecondi. Usare INFINITE per bloccare fino a quando non è presente un evento.

Valore restituito

Restituisce un valore HRESULT . I valori possibili includono quelli illustrati nella tabella seguente.

Codice restituito Descrizione
S_OK
Operazione completata.
E_ABORT
Timeout.

Commenti

Se nella coda non è presente alcun evento, questo metodo attende fino a msTimeout millisecondi per l'arrivo di un evento. Evitare di usare un intervallo di timeout infinito, perché i thread non possono elaborare messaggi durante l'attesa in GetEvent. Se si chiama GetEvent dallo stesso thread che elabora i messaggi di Windows, specificare solo tempi di attesa ridotti, per rimanere reattivi all'input dell'utente.

Dopo aver chiamato GetEvent, chiamare il metodo IMediaEvent::FreeEventParams per rilasciare tutte le risorse allocate per i parametri dell'evento.

Per un elenco dei codici di notifica e dei valori dei parametri dell'evento, vedere Codici di notifica degli eventi.

Poiché questo metodo rimuove l'evento dalla coda degli eventi del grafo del filtro, non è possibile che più client monitorino gli eventi dallo stesso grafico.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione control.h (include Dshow.h)
Libreria Strmiids.lib

Vedi anche

Codici di errore e di esito positivo

Interfaccia IMediaEvent

IMediaEventEx