IPinFlowControl::Block-Methode (strmif.h)
[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.
Syntax
HRESULT Block(
[in] DWORD dwBlockFlags,
[in] HANDLE hEvent
);
Parameter
[in] 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.
[in] hEvent
Behandeln Sie ein Ereignisobjekt oder NULL. Wenn dieser Parameter nicht NULL ist, ist die Methode asynchron und gibt sofort zurück. Das Ereignis wird nach Abschluss des Vorgangs signalisiert. Wenn dieser Parameter NULL ist, ist die Methode synchron und wird erst abgeschlossen, wenn der Pin blockiert ist. Wenn dwBlockFlags null ist, muss dieser Parameter NULL sein.
Rückgabewert
Gibt einen HRESULT-Wert zurück. Die folgenden Werte sind möglich.
Rückgabecode | Beschreibung |
---|---|
|
Die Anheftung wurde bereits aufgehoben. |
|
Erfolg. |
|
Das Anheften ist bereits in einem anderen Thread blockiert. |
|
Das Anheften ist bereits für den aufrufenden Thread blockiert. |
Hinweise
Diese Methode kann synchron oder asynchron sein:
- Um es asynchron aufzurufen, verwenden Sie die CreateEvent-Funktion , um ein Ereignisobjekt zu erstellen. Übergeben Sie das Ereignishandle im hEvent-Parameter . Die Methode gibt sofort zurück und signalisiert das Ereignis, wenn der Vorgang abgeschlossen ist. Rufen Sie eine Wartefunktion wie WaitForSingleObject auf, um auf das Ereignis zu warten.
- Um diese Methode synchron aufzurufen, legen Sie den hEvent-Parameter auf NULL fest. Die Methode blockiert, bis sie abgeschlossen ist. Die Methode wird möglicherweise erst abgeschlossen, wenn der Pin bereit ist, ein Beispiel zu liefern. Wenn der Filter angehalten wird, blockiert die Methode möglicherweise auf unbestimmte Zeit. Daher sollten Sie diese Methode nicht synchron aus Ihrem Standard Anwendungsthread aufrufen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | strmif.h (include Dshow.h) |
Bibliothek | Strmiids.lib |