Fungsi ReportEventW (winbase.h)
Menulis entri di akhir log peristiwa yang ditentukan.
Sintaksis
BOOL ReportEventW(
[in] HANDLE hEventLog,
[in] WORD wType,
[in] WORD wCategory,
[in] DWORD dwEventID,
[in] PSID lpUserSid,
[in] WORD wNumStrings,
[in] DWORD dwDataSize,
[in] LPCWSTR *lpStrings,
[in] LPVOID lpRawData
);
Parameter
[in] hEventLog
Handel ke log peristiwa. Fungsi
Pada Windows XP dengan SP2, parameter ini tidak dapat menjadi handel ke log Keamanan
[in] wType
Jenis peristiwa yang akan dicatat. Parameter ini bisa menjadi salah satu nilai berikut.
Untuk informasi selengkapnya tentang jenis peristiwa, lihat Jenis Peristiwa.
[in] wCategory
Kategori peristiwa. Ini adalah informasi khusus sumber; kategori dapat memiliki nilai apa pun. Untuk informasi selengkapnya, lihat Kategori Peristiwa.
[in] dwEventID
Pengidentifikasi peristiwa. Pengidentifikasi peristiwa menentukan entri dalam file pesan yang terkait dengan sumber peristiwa. Untuk informasi selengkapnya, lihat Pengidentifikasi Peristiwa.
[in] lpUserSid
Penunjuk ke pengidentifikasi keamanan pengguna saat ini. Parameter ini dapat NULL jika pengidentifikasi keamanan tidak diperlukan.
[in] wNumStrings
Jumlah string sisipkan dalam array yang ditunjukkan oleh parameter lpStrings
[in] dwDataSize
Jumlah byte data mentah (biner) khusus peristiwa untuk ditulis ke log. Jika parameter ini nol, tidak ada data khusus peristiwa yang ada.
[in] lpStrings
Penunjuk ke buffer yang berisi array string yang dihentikan null yang digabungkan ke dalam pesan sebelum Penampil Peristiwa menampilkan string kepada pengguna. Parameter ini harus berupa penunjuk yang valid (atau null), bahkan jika wNumStrings adalah nol. Setiap string dibatasi hingga 31.839 karakter.
Sebelum Windows Vista: Setiap string dibatasi hingga 32K karakter.
[in] lpRawData
Penunjuk ke buffer yang berisi data biner. Parameter ini harus berupa penunjuk yang valid (atau
Mengembalikan nilai
Jika fungsi berhasil, nilai pengembalian bukan nol, menunjukkan bahwa entri ditulis ke log.
Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError, yang mengembalikan salah satu kode kesalahan yang diperluas berikut.
Kode kesalahan | Arti |
---|---|
|
Salah satu parameter tidak valid.
Kesalahan ini dikembalikan pada Windows Server 2003 jika data pesan yang akan dicatat terlalu besar. Kesalahan ini dikembalikan oleh server RPC di Windows Server 2003 jika parameter dwDataSize lebih besar dari 261.991 (0x3ff67). |
|
Sumber daya memori tidak cukup tersedia untuk menyelesaikan operasi. |
|
Batas array tidak valid.
Kesalahan ini dikembalikan jika data pesan yang akan dicatat terlalu besar. Pada Windows Vista dan yang lebih baru, kesalahan ini dikembalikan jika parameter |
|
Stub menerima data yang buruk.
Kesalahan ini dikembalikan pada Windows XP jika data pesan yang akan dicatat terlalu besar. Kesalahan ini dikembalikan oleh server RPC pada Windows XP, jika parameter |
|
Gunakan FormatMessage untuk mendapatkan string pesan untuk kesalahan yang dikembalikan. |
Komentar
Fungsi ini digunakan untuk mencatat peristiwa. Entri ditulis ke akhir log yang dikonfigurasi untuk sumber yang diidentifikasi oleh parameter hEventLog
Ada batas ukuran yang berbeda pada ukuran data pesan yang dapat dicatat tergantung pada versi Windows yang digunakan oleh klien tempat aplikasi dijalankan dan server tempat pesan dicatat. Server ditentukan oleh parameter lpUNCServerName
Jika string yang Anda log berisi %n, di mana n adalah nilai bilangan bulat (misalnya, %1), penampil peristiwa memperlakukannya sebagai string penyisipan. Karena alamat IPv6 dapat berisi urutan karakter ini, Anda harus menyediakan penentu format (! S!) untuk mencatat pesan peristiwa yang berisi alamat IPv6. Penentu ini memberi tahu kode pemformatan untuk menggunakan string secara harfiah dan tidak melakukan ekspansi lebih lanjut (misalnya, "alamat IPv6 saya adalah: %1! S!").
Contoh
Misalnya, lihat Melaporkan Peristiwa.
Nota
Header winbase.h mendefinisikan ReportEvent sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedur 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
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Platform Target |
Windows |
Header |
winbase.h (termasuk Windows.h) |
Pustaka |
Advapi32.lib |
DLL |
Advapi32.dll |
Lihat juga
Format File Log Peristiwa
Fungsi Pengelogan Peristiwa
ReadEventLog