Bagikan melalui


Fungsi FilterGetMessage (fltuser.h)

Fungsi FilterGetMessage mendapatkan pesan dari minifilter mode kernel.

Sintaks

HRESULT FilterGetMessage(
  [in]      HANDLE                 hPort,
  [out]     PFILTER_MESSAGE_HEADER lpMessageBuffer,
  [in]      DWORD                  dwMessageBufferSize,
  [in, out] LPOVERLAPPED           lpOverlapped
);

Parameter

[in] hPort

Handel port komunikasi dikembalikan oleh panggilan sebelumnya ke FilterConnectCommunicationPort. Parameter ini diperlukan dan tidak boleh NULL.

[out] lpMessageBuffer

Penunjuk ke buffer yang dialokasikan penelepon yang menerima pesan dari minifilter. Pesan harus berisi struktur FILTER_MESSAGE_HEADER , tetapi jika tidak, formatnya ditentukan penelepon. Parameter ini diperlukan dan tidak boleh NULL.

[in] dwMessageBufferSize

Ukuran, dalam byte, dari buffer yang dirujuk oleh parameter lpMessageBuffer .

[in, out] lpOverlapped

Penunjuk ke struktur YANG TUMPANG TINDIH. Parameter ini bersifat opsional dan dapat berupa NULL. Jika bukan NULL, pemanggil harus menginisialisasi anggota hEvent dari struktur yang TUMPANG TINDIH ke handel peristiwa yang valid atau NULL.

Menampilkan nilai

FilterGetMessage mengembalikan S_OK jika berhasil. Jika tidak, ia mengembalikan nilai kesalahan.

Keterangan

Fungsi FilterGetMessage dirancang untuk operasi sinkron dan asinkron (tumpang tindih).

Ketika lpOverlappedadalah NULL, dan pesan tersedia, FilterGetMessage segera kembali. Jika tidak, penelepon dimasukkan ke dalam status tunggu hingga pesan diterima.

Jika lpOverlapped bukan NULL, FilterGetMessage mengembalikan ERROR_IO_PENDING. Dalam situasi ini, objek peristiwa dalam struktur lpOverlapped diatur ke status tidak ditandatangani sebelum FilterGetMessage kembali. Ketika pesan dikirim, peristiwa ini diatur ke status yang disinyalkan.

Setelah menerima pesan dari minifilter, pemanggil dapat mengirim balasan dengan memanggil FilterReplyMessage.

Minifilter atau instans mengirim pesan ke aplikasi mode pengguna dengan memanggil FltSendMessage.

Persyaratan

   
Target Platform Universal
Header fltuser.h (termasuk Fltuser.h)
Pustaka FltLib.lib
DLL FltLib.dll

Lihat juga

CreateEvent

FILTER_MESSAGE_HEADER

FilterConnectCommunicationPort

FilterReplyMessage

FilterSendMessage

FltSendMessage

GetOverlappedResult

HasOverlappedIoCompleted