Bagikan melalui


Fungsi JournalRecordProc

Deskripsi

Fungsi panggilan balik yang ditentukan aplikasi atau yang ditentukan pustaka yang digunakan dengan fungsi SetWindowsHookEx . Fungsi merekam pesan yang dihapus sistem dari antrean pesan sistem. Nantinya, aplikasi dapat menggunakan prosedur hook JournalPlaybackProc untuk memutar kembali pesan.

Jenis HOOKPROC menentukan penunjuk ke fungsi panggilan balik ini. JournalRecordProc adalah tempat penampung untuk nama fungsi yang ditentukan aplikasi atau yang ditentukan pustaka.

LRESULT CALLBACK JournalRecordProc(
  _In_ int    code,
       WPARAM wParam,
  _In_ LPARAM lParam
);

Parameter

code [in]

Jenis: int

Menentukan cara memproses pesan. Jika kode kurang dari nol, prosedur hook harus meneruskan pesan ke fungsi CallNextHookEx tanpa pemrosesan lebih lanjut dan harus mengembalikan nilai yang dikembalikan oleh CallNextHookEx. Parameter ini bisa menjadi salah satu nilai berikut.

Nilai Makna
HC_ACTION 0 Parameter lParam adalah penunjuk ke struktur EVENTMSG yang berisi informasi tentang pesan yang dihapus dari antrean sistem. Prosedur kait harus merekam konten struktur dengan menyalinnya ke buffer atau file.
HC_SYSMODALOFF 5 Kotak dialog modal sistem telah dihancurkan. Prosedur kait harus melanjutkan perekaman.
HC_SYSMODALON 4 Kotak dialog modal sistem sedang ditampilkan. Hingga kotak dialog dihancurkan, prosedur kait harus berhenti merekam.

wParam

Jenis: WPARAM

Parameter ini tidak digunakan.

lParam [in]

Jenis: LPARAM

Penunjuk ke struktur EVENTMSG yang berisi pesan yang akan direkam.

Mengembalikan

Jenis: LRESULT

Nilai yang dikembalikan diabaikan.

Keterangan

Prosedur hook JournalRecordProc harus disalin tetapi tidak mengubah pesan. Setelah prosedur kait mengembalikan kontrol ke sistem, pesan terus diproses.

Instal prosedur hook JournalRecordProc dengan menentukan jenis WH_JOURNALRECORD dan penunjuk ke prosedur hook dalam panggilan ke fungsi SetWindowsHookEx .

Prosedur hook JournalRecordProc tidak perlu tinggal di pustaka tautan dinamis. Prosedur hook JournalRecordProc dapat hidup dalam aplikasi itu sendiri.

Tidak seperti kebanyakan prosedur kait global lainnya, prosedur hook JournalRecordProc dan JournalPlaybackProc selalu dipanggil dalam konteks utas yang mengatur kait.

Aplikasi yang telah menginstal prosedur kait JournalRecordProc harus watch untuk kode kunci virtual VK_CANCEL (yang diimplementasikan sebagai kombinasi tombol CTRL+BREAK pada sebagian besar keyboard). Kode kunci virtual ini harus ditafsirkan oleh aplikasi sebagai sinyal bahwa pengguna ingin menghentikan perekaman jurnal. Aplikasi harus merespons dengan mengakhiri urutan perekaman dan menghapus prosedur kait JournalRecordProc . Penghapusan itu penting. Ini mencegah aplikasi penjurrionan mengunci sistem dengan menggantung di dalam prosedur kait.

Peran ini sebagai sinyal untuk menghentikan perekaman journl berarti bahwa kombinasi tombol CTRL+BREAK tidak dapat direkam dengan sendirinya. Karena kombinasi tombol CTRL+C tidak memiliki peran seperti sinyal jurnal, itu dapat direkam. Ada dua kombinasi kunci lain yang tidak dapat direkam: CTRL+ESC dan CTRL+ALT+DEL. Kedua kombinasi utama tersebut menyebabkan sistem menghentikan semua aktivitas jurnal (rekam atau pemutaran), menghapus semua kait jurnal, dan memposting pesan WM_CANCELJOURNAL ke aplikasi jurnal.

Lihat juga

CallNextHookEx

EVENTMSG

JournalPlaybackProc

SetWindowsHookEx

WM_CANCELJOURNAL

Hook