读书人

怎么向系统写入Event Log ?请问各路大

发布时间: 2012-02-29 16:44:10 作者: rapoo

如何向系统写入Event Log ?请教各路大侠。
要求用C语言,记载Application的错误日志,写Event Log到System中。

[解决办法]
帮顶
[解决办法]
去 MSDN 中查 ReportEvent API, 里面还提供了一个例子:

#include <windows.h>
#include <stdio.h>

void MyReportEvent(
LPTSTR pszSrcName, // event source name
DWORD dwEventID, // event identifier
WORD wCategory, // event category
WORD cInserts, // count of insert strings
LPCTSTR *szMsg) // insert strings
{
HANDLE h;

// Get a handle to the event log.

h = RegisterEventSource(NULL, // use local computer
pszSrcName); // event source name
if (h == NULL)
{
printf( "Could not register the event source. ");
return;
}

// Report the event.

if (!ReportEvent(h, // event log handle
EVENTLOG_ERROR_TYPE, // event type
wCategory, // event category
dwEventID, // event identifier
NULL, // no user security identifier
cInserts, // number of substitution strings
0, // no data
szMsg, // pointer to strings
NULL)) // no data
{
printf( "Could not report the event. ");
}

DeregisterEventSource(h);
return;
}

[解决办法]
API

读书人网 >C++

热点推荐