Bagikan melalui


Kelas CDeferredCommand

[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.]

hierarki kelas cdeferredcommand

Perintah yang ditangguhkan diantrekan oleh panggilan ke metode pada antarmuka IQueueCommand dan diekspos oleh manajer grafik filter dan oleh beberapa filter. Panggilan yang berhasil ke salah satu metode ini mengembalikan antarmuka IDeferredCommand yang mewakili perintah antrean.

Objek CDeferredCommand mewakili satu perintah yang ditangguhkan dan mengekspos antarmuka IDeferredCommand serta metode lain yang mengizinkan pemeriksaan waktu dan eksekusi aktual. Objek CDeferredCommand berisi referensi ke objek CCmdQueue tempat objek diantrekan.

Jumlah referensi mengontrol masa CDeferredCommand pakai kelas. Saat memanggil fungsi anggota CDeferredCommand::Invoke , aplikasi panggilan mendapatkan penunjuk antarmuka yang dihitung referensi, dan objek CCmdQueue juga menyimpan jumlah referensi pada perintah yang ditangguhkan. Memanggil fungsi anggota IDeferredCommand::Cancel mengambil perintah yang ditangguhkan dari antrean perintah dan dengan demikian mengurangi jumlah referensi satu per satu. Setelah diambil dari antrean, perintah tidak dapat diletakkan kembali pada antrean.

Anggota Data terproteksi Deskripsi
m_bStream Benderai untuk waktu streaming atau waktu presentasi. untuk diteruskan ke metode yang dipanggil.
m_Dispatch Mengakses antarmuka ITypeInfo .
m_dispidMethod Metode pada antarmuka untuk dijalankan.
m_DispParams Objek CDispParams yang berisi daftar parameter DISPPARAMS
m_hrResult Menyimpan nilai HRESULT yang dikembalikan.
m_iid Pengidentifikasi unik global (GUID) antarmuka.
m_pQueue Arahkan ke objek CCmdQueue yang mengekspos antarmuka IQueueCommand .
m_pUnk Penunjuk IUnknown ke antarmuka tempat perintah akan dijalankan.
m_pvarResult Informasi yang dihasilkan, jika ada, dari metode yang dipanggil.
m_time Waktu di mana perintah akan dijalankan.
m_wFlags Bendera yang menentukan konteks pemanggilan.
Fungsi Anggota Deskripsi
CDeferredCommand Membuat objek CDeferredCommand .
GetFlags Mengambil bendera konteks yang terkait dengan perintah yang ditangguhkan.
GetIID Mengambil pengidentifikasi antarmuka (IID) antarmuka tempat metode akan dijalankan.
GetMethod Mengambil pengidentifikasi pengiriman metode yang akan dijalankan.
GetParams Mengambil daftar argumen DISPPARAMS ke metode .
GetResult Mengambil daftar argumen yang dihasilkan, jika ada.
GetTime Mengambil waktu ketika metode akan dijalankan.
Gunakan Menyediakan akses ke metode dan properti yang diekspos oleh objek.
IsStreamTime Menentukan apakah perintah akan dijalankan pada waktu streaming atau waktu presentasi.
Metode IDeferredCommand Deskripsi
Batalkan Membatalkan permintaan CDeferredCommand::Invoke yang sebelumnya diantrekan.
Keyakinan Saat ini tidak diimplementasikan.
Tunda Menentukan waktu presentasi baru untuk perintah yang sebelumnya diantrekan.
GetHResult Mengambil nilai HRESULT dari metode yang dipanggil.