Bagikan melalui


Metode IPinFlowControl::Block (strmif.h)

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine dan Audio/Video Capture di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Metode Block memblokir atau membuka blokir aliran data dari pin.

Sintaks

HRESULT Block(
  [in] DWORD  dwBlockFlags,
  [in] HANDLE hEvent
);

Parameter

[in] dwBlockFlags

Bendera yang menunjukkan apakah akan memblokir atau membuka blokir pin. Harus salah satu nilai berikut:

  • Nol: Buka blokir aliran data dari pin.
  • AM_PIN_FLOW_CONTROL_BLOCK: Blokir aliran data dari pin.

[in] hEvent

Menangani ke objek peristiwa, atau NULL. Jika parameter ini non-NULL, metode ini asinkron dan segera dikembalikan. Peristiwa disinyalkan ketika operasi selesai. Jika parameter ini NULL, metode ini sinkron dan tidak selesai sampai pin diblokir. Jika dwBlockFlags adalah nol, parameter ini harus NULL.

Mengembalikan nilai

Mengembalikan nilai HRESULT . Nilai yang mungkin termasuk yang berikut ini.

Menampilkan kode Deskripsi
S_FALSE
Pin sudah tidak diblokir.
S_OK
Berhasil.
VFW_E_PIN_ALREADY_BLOCKED
Pin sudah diblokir pada utas lain.
VFW_E_PIN_ALREADY_BLOCKED_ON_THIS_THREAD
Pin sudah diblokir pada utas panggilan.

Keterangan

Metode ini bisa sinkron atau asinkron:

  • Untuk memanggilnya secara asinkron, gunakan fungsi CreateEvent untuk membuat objek peristiwa. Berikan handel peristiwa di parameter hEvent . Metode ini segera kembali dan memberi sinyal peristiwa ketika operasi telah selesai. Panggil fungsi tunggu seperti WaitForSingleObject untuk menunggu peristiwa.
  • Untuk memanggil metode ini secara sinkron, atur parameter hEvent ke NULL. Metode memblokir sampai selesai. Metode mungkin tidak selesai sampai pin siap untuk mengirimkan sampel. Jika filter dijeda, metode mungkin memblokir tanpa batas waktu. Oleh karena itu, Anda tidak boleh memanggil metode ini secara sinkron dari utas aplikasi utama Anda.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header strmif.h (termasuk Dshow.h)
Pustaka Strmiids.lib

Lihat juga

Koneksi Ulang Dinamis

Kode Kesalahan dan Keberhasilan

Antarmuka IPinFlowControl