Metodo CDynamicOutputPin.Block

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine 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, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il Block metodo blocca o sblocca il flusso di dati dal pin. Questo metodo implementa il metodo IPinFlowControl::Block .

Sintassi

HRESULT Block(
   DWORD  dwBlockFlags,
   HANDLE hEvent
);

Parametri

dwBlockFlags

Flag che indica se bloccare o sbloccare il pin. Deve essere uno dei valori seguenti:

Zero: sbloccare il flusso di dati dal pin.

AM_PIN_FLOW_CONTROL_BLOCK: blocca il flusso di dati dal pin.

hEvent

Gestire in un oggetto evento o NULL.

Valore restituito

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

Codice restituito Descrizione
S_FALSE
Il pin è già sbloccato.
S_OK
Operazione completata.
E_INVALIDARG
Argomento non valido.
VFW_E_PIN_ALREADY_BLOCKED
Il pin è già bloccato in un altro thread.
VFW_E_PIN_ALREADY_BLOCKED_ON_THIS_THREAD
Il pin è già bloccato nel thread chiamante.

Commenti

Per altre informazioni su questo metodo, vedere IPinFlowControl::Block. Internamente, questo metodo chiama uno dei metodi protetti seguenti:

Lo sblocco viene sempre eseguito in modo sincrono.

Requisiti

Requisito Valore
Intestazione
Amfilter.h (include Streams.h)
Libreria
Strmbase.lib (build al dettaglio);
Strmbasd.lib (build di debug)

Vedi anche

Classe CDynamicOutputPin