Freigeben über


CDynamicOutputPin.Block-Methode

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Die Block -Methode blockiert oder hebt die Blockierung des Datenflusses aus dem Pin auf. Diese Methode implementiert die IPinFlowControl::Block-Methode .

Syntax

HRESULT Block(
   DWORD  dwBlockFlags,
   HANDLE hEvent
);

Parameter

dwBlockFlags

Flag, das angibt, ob der Pin blockiert oder aufgehoben werden soll. Dies muss einer der folgenden Werte sein:

Null: Heben Sie die Blockierung des Datenflusses über den Pin auf.

AM_PIN_FLOW_CONTROL_BLOCK: Blockieren sie den Datenfluss vom Pin.

hEvent

Behandeln Sie ein Ereignisobjekt oder NULL.

Rückgabewert

Gibt einen HRESULT-Wert zurück. Mögliche Werte sind die in der folgenden Tabelle gezeigten Werte.

Rückgabecode Beschreibung
S_FALSE
Die Anheftung wurde bereits aufgehoben.
S_OK
Erfolg.
E_INVALIDARG
Ungültiges Argument.
VFW_E_PIN_ALREADY_BLOCKED
Das Anheften ist bereits in einem anderen Thread blockiert.
VFW_E_PIN_ALREADY_BLOCKED_ON_THIS_THREAD
Das Anheften ist bereits für den aufrufenden Thread blockiert.

Bemerkungen

Weitere Informationen zu dieser Methode finden Sie unter IPinFlowControl::Block. Intern ruft diese Methode eine der folgenden geschützten Methoden auf:

Das Aufheben der Blockierung wird immer synchron durchgeführt.

Anforderungen

Anforderung Wert
Header
Amfilter.h (include Streams.h)
Bibliothek
Strmbase.lib (Einzelhandelsbuilds);
Strmbasd.lib (Debugbuilds)

Siehe auch

CDynamicOutputPin-Klasse