Fungsi ReadEventLogW (winbase.h)

Membaca jumlah entri yang ditentukan dari log peristiwa yang ditentukan. Fungsi ini dapat digunakan untuk membaca entri log dalam urutan kronologis atau kronologis terbalik.

Sintaks

BOOL ReadEventLogW(
  [in]  HANDLE hEventLog,
  [in]  DWORD  dwReadFlags,
  [in]  DWORD  dwRecordOffset,
  [out] LPVOID lpBuffer,
  [in]  DWORD  nNumberOfBytesToRead,
  [out] DWORD  *pnBytesRead,
  [out] DWORD  *pnMinNumberOfBytesNeeded
);

Parameter

[in] hEventLog

Handel ke log peristiwa yang akan dibaca. Fungsi OpenEventLog mengembalikan handel ini.

[in] dwReadFlags

Gunakan nilai bendera berikut untuk menunjukkan cara membaca file log. Parameter ini harus menyertakan salah satu nilai berikut (bendera saling eksklusif).

Nilai Makna
EVENTLOG_SEEK_READ
0x0002
Mulailah membaca dari rekaman yang ditentukan dalam parameter dwRecordOffset .

Opsi ini mungkin tidak berfungsi dengan file log besar jika fungsi tidak dapat menentukan ukuran file log. Untuk detailnya, lihat artikel Pangkalan Pengetahuan, 177199.

EVENTLOG_SEQUENTIAL_READ
0x0001
Baca rekaman secara berurutan.

Jika ini adalah operasi baca pertama, bendera EVENTLOG_FORWARDS_READ EVENTLOG_BACKWARDS_READ menentukan rekaman mana yang dibaca terlebih dahulu.

 

Anda harus menentukan salah satu bendera berikut untuk menunjukkan arah operasi baca berturut-turut (bendera saling eksklusif).

Nilai Makna
EVENTLOG_FORWARDS_READ
0x0004
Log dibaca dalam urutan kronologis (terlama hingga terbaru).

Default.

EVENTLOG_BACKWARDS_READ
0x0008
Log dibaca dalam urutan kronologis terbalik (terbaru hingga terlama).

[in] dwRecordOffset

Nomor rekaman entri log di mana operasi baca harus dimulai. Parameter ini diabaikan kecuali dwReadFlags menyertakan bendera EVENTLOG_SEEK_READ .

[out] lpBuffer

Buffer yang dialokasikan aplikasi yang akan menerima satu atau beberapa struktur EVENTLOGRECORD . Parameter ini tidak boleh NULL, meskipun parameter nNumberOfBytesToRead adalah nol.

Ukuran maksimum buffer ini adalah 0x7ffff byte.

[in] nNumberOfBytesToRead

Ukuran buffer lpBuffer , dalam byte. Fungsi ini akan membaca entri log sebanyak yang akan pas di buffer; fungsi tidak akan mengembalikan entri parsial.

[out] pnBytesRead

Penunjuk ke variabel yang menerima jumlah byte yang dibaca oleh fungsi.

[out] pnMinNumberOfBytesNeeded

Penunjuk ke variabel yang menerima ukuran buffer lpBuffer yang diperlukan. Nilai ini hanya valid fungsi ini mengembalikan nol dan GetLastError mengembalikan ERROR_INSUFFICIENT_BUFFER.

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan bukan nol.

Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Ketika fungsi ini berhasil dikembalikan, posisi baca dalam log peristiwa disesuaikan dengan jumlah rekaman yang dibaca.

Catatan Nama file yang dikonfigurasi untuk sumber ini mungkin juga merupakan nama file yang dikonfigurasi untuk sumber lain (beberapa sumber dapat ada sebagai subkunjang di bawah satu log). Oleh karena itu, fungsi ini dapat mengembalikan peristiwa yang dicatat oleh lebih dari satu sumber.
 

Contoh

Misalnya, lihat Mengkueri Informasi Peristiwa.

Catatan

Header winbase.h mendefinisikan ReadEventLog sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header winbase.h (termasuk Windows.h)
Pustaka Advapi32.lib
DLL Advapi32.dll
Set API ext-ms-win-advapi32-eventlog-ansi-l1-1-0 (diperkenalkan dalam Windows 10, versi 10.0.10240)

Lihat juga

ClearEventLog

CloseEventLog

EVENTLOGRECORD

Fungsi Pengelogan Peristiwa

OpenEventLog

ReportEvent