Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
include
log4cpp
NTEventLogAppender.hh
Go to the documentation of this file.
1
/*
2
* NTEventLogAppender.hh
3
*
4
* See the COPYING file for the terms of usage and distribution.
5
*/
6
7
#ifndef _LOG4CPP_NTEVENTLOGAPPENDER_HH
8
#define _LOG4CPP_NTEVENTLOGAPPENDER_HH
9
10
#ifdef WIN32 // only available on Win32
11
12
// deal with ERROR #define
13
// N.B. This #includes windows.h with NOGDI and WIN32_LEAN_AND_MEAN #defined.
14
// If this is not what the user wants, #include windows.h before this file.
15
#ifndef _WINDOWS_
16
# ifndef NOGDI
17
# define NOGDI // this will circumvent the ERROR #define in windows.h
18
# define LOG4CPP_UNDEFINE_NOGDI
19
# endif
20
21
# ifndef WIN32_LEAN_AND_MEAN
22
# define WIN32_LEAN_AND_MEAN
23
# define LOG4CPP_UNDEFINE_WIN32_LEAN_AND_MEAN
24
# endif
25
26
# include <windows.h>
27
28
# ifdef LOG4CPP_UNDEFINE_NOGDI
29
# undef NOGDI
30
# endif
31
32
# ifdef LOG4CPP_UNDEFINE_WIN32_LEAN_AND_MEAN
33
# undef WIN32_LEAN_AND_MEAN
34
# endif
35
36
#endif // done dealing with ERROR #define
37
38
#include <
log4cpp/Portability.hh
>
39
#include <
log4cpp/AppenderSkeleton.hh
>
40
41
namespace
log4cpp
{
42
52
class
LOG4CPP_EXPORT
NTEventLogAppender :
public
AppenderSkeleton {
53
public
:
54
60
NTEventLogAppender(
const
std::string& name,
const
std::string& sourceName);
61
virtual
~NTEventLogAppender();
62
66
virtual
bool
reopen();
67
68
virtual
void
close();
69
74
virtual
bool
requiresLayout()
const
;
75
76
virtual
void
setLayout(Layout* layout);
77
78
protected
:
79
80
WORD getCategory(
Priority::Value
priority);
81
WORD getType(
Priority::Value
priority);
82
HKEY regGetKey(TCHAR *subkey, DWORD *disposition);
83
void
regSetString(HKEY hkey, TCHAR *name, TCHAR *value);
84
void
regSetDword(HKEY hkey, TCHAR *name, DWORD value);
85
void
addRegistryInfo(
const
char
*source);
86
87
virtual
void
open();
88
93
virtual
void
_append(
const
LoggingEvent& event);
94
95
HANDLE _hEventSource;
96
std::string _strSourceName;
97
};
98
}
99
100
#else // WIN32
101
#error NTEventLoggAppender is not available on on Win32 platforms
102
#endif // WIN32
103
104
#endif // _LOG4CPP_NTEVENTLOGAPPENDER_HH
105
AppenderSkeleton.hh
Portability.hh
LOG4CPP_EXPORT
#define LOG4CPP_EXPORT
Definition:
Export.hh:26
log4cpp
Definition:
AbortAppender.hh:16
log4cpp::Priority::Value
int Value
Definition:
Priority.hh:85
log4cpp
Author(s): Stephen Roderick, Bastiaan Bakker, Cedric Le Goater, Steve Ostlind, Marcel Harkema, Walter Stroebel, Glenn Scott and Tony Cheung
autogenerated on Sun Jun 23 2019 19:10:00