ReadEventLogW function (winbase.h)
Reads the specified number of entries from the specified event log. The function can be used to read log entries in chronological or reverse chronological order.
Syntax
BOOL ReadEventLogW(
[in] HANDLE hEventLog,
[in] DWORD dwReadFlags,
[in] DWORD dwRecordOffset,
[out] LPVOID lpBuffer,
[in] DWORD nNumberOfBytesToRead,
[out] DWORD *pnBytesRead,
[out] DWORD *pnMinNumberOfBytesNeeded
);
Parameters
[in] hEventLog
A handle to the event log to be read. The OpenEventLog function returns this handle.
[in] dwReadFlags
Use the following flag values to indicate how to read the log file. This parameter must include one of the following values (the flags are mutually exclusive).
You must specify one of the following flags to indicate the direction for successive read operations (the flags are mutually exclusive).
[in] dwRecordOffset
The record number of the log-entry at which the read operation should start. This parameter is ignored unless dwReadFlags includes the EVENTLOG_SEEK_READ flag.
[out] lpBuffer
An application-allocated buffer that will receive one or more EVENTLOGRECORD structures. This parameter cannot be NULL, even if the nNumberOfBytesToRead parameter is zero.
The maximum size of this buffer is 0x7ffff bytes.
[in] nNumberOfBytesToRead
The size of the lpBuffer buffer, in bytes. This function will read as many log entries as will fit in the buffer; the function will not return partial entries.
[out] pnBytesRead
A pointer to a variable that receives the number of bytes read by the function.
[out] pnMinNumberOfBytesNeeded
A pointer to a variable that receives the required size of the lpBuffer buffer. This value is valid only this function returns zero and GetLastError returns ERROR_INSUFFICIENT_BUFFER.
Return value
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
When this function returns successfully, the read position in the event log is adjusted by the number of records read.
Examples
For an example, see Querying for Event Information.
Note
The winbase.h header defines ReadEventLog as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Target Platform | Windows |
Header | winbase.h (include Windows.h) |
Library | Advapi32.lib |
DLL | Advapi32.dll |
API set | ext-ms-win-advapi32-eventlog-ansi-l1-1-0 (introduced in Windows 10, version 10.0.10240) |