Reading the Event Log
The following code sample reads all the records in the
Application logfile and displays the
event identifier, event type, and source name for each event log entry.
EVENTLOGRECORD *pevlr;
BYTE bBuffer[BUFFER_SIZE];
DWORD dwRead, dwNeeded, cRecords, dwThisRecord = 0;
/* Open the Application event log. */
h = OpenEventLog(NULL, /* uses local computer */
"Application"); /* source name */
if (h == NULL)
ErrorExit("could not open Application event log");
pevlr = (EVENTLOGRECORD *) &bBuffer;
/*
* Opening the event log positions the file pointer
* for this handle at the beginning of the log.
*
* Read records sequentially until there
* are no more.
*/
while (ReadEventLog(h, /* event log handle */
EVENTLOG_FORWARDS_READ | /* reads forward */
EVENTLOG_SEQUENTIAL_READ, /* sequential read */
0, /* ignored for sequential reads */
pevlr, /* address of buffer */
BUFFER_SIZE, /* size of buffer */
&dwRead, /* count of bytes read */
&dwNeeded)) { /* bytes in next record */
while (dwRead > 0) {
/*
* Print the event ID, type, and source name.
* The source name is just past the end of the
* formal structure.
*/
printf("%02d Event ID: 0x%08X ",
dwThisRecord++, pevlr->EventID);
printf("EventType: %d Source: %s\n",
pevlr->EventType, (LPSTR) ((LPBYTE) pevlr +
sizeof(EVENTLOGRECORD)));
dwRead -= pevlr->Length;
pevlr = (EVENTLOGRECORD *)
((LPBYTE) pevlr + pevlr->Length);
}
pevlr = (EVENTLOGRECORD *) &bBuffer;
}
CloseEventLog(h);
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database