Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*++
Copyright (c) 1996 Microsoft Corporation
Module Name :
eventlog.hxx
Abstract:
This file defines functions and types required for logging events to the event logger.
Author:
Murali R. Krishnan ( MuraliK ) 27-Sept-1994
Revision History: MuraliK 21-Nov-1994 Ported to common dll
--*/
# ifndef _EVENTLOG_HXX_
# define _EVENTLOG_HXX_
#include <windows.h>
# include "datetime.hxx" // for Win95 object
# include "irtlmisc.h"
/***********************************************************
* Type Definitions ************************************************************/
/*********************************************
* class EVENT_LOG * * Declares a event log object. * This object provides an interface for logging messages * to the System EventLog file globally for given program. * ************************************************/
class IRTL_DLLEXP EVENT_LOG {
private:
DWORD m_ErrorCode; // error code for last operation
HANDLE m_hEventSource; // handle for reporting events
public:
EVENT_LOG( IN LPCTSTR lpszSourceName); // name of source for event log
~EVENT_LOG( VOID);
VOID LogEvent( IN DWORD idMessage, // id for log message
IN WORD cSubStrings, // count of substrings
IN const CHAR * apszSubStrings[], // substrings in the message
IN DWORD errCode = 0); // error code if any
BOOL Success( VOID) const { return ( m_ErrorCode == NO_ERROR); }
DWORD GetErrorCode( VOID) const { return ( m_ErrorCode); }
private:
VOID LogEventPrivate( IN DWORD idMessage, IN WORD wEventType, IN WORD cSubStrings, IN const CHAR * apszSubStrings[], IN DWORD errCode);
};
typedef EVENT_LOG * LPEVENT_LOG;
# endif // _EVENTLOG_HXX_
|