74 m_sourceName = lpszSourceName;
99 if ( lpszModuleName != NULL )
101 h = ::LoadLibrary(lpszModuleName);
104 DWORD dwRc = ::GetModuleFileName(h, path.
GetBuffer(MAX_PATH), MAX_PATH);
122 if ( ! m_sourceName.
IsEmpty() )
140 va_start(args, lpszFmt);
141 bool r = m_Write(EVENTLOG_INFORMATION_TYPE, eventId, 0, NULL, lpszFmt, args);
156 bool Information(DWORD eventId,
size_t dataSize, LPCVOID lpData, LPCTSTR lpszFmt, ...)
const
158 ASSERT( ! ::IsBadReadPtr(lpData, dataSize) );
160 va_start(args, lpszFmt);
161 bool r = m_Write(EVENTLOG_INFORMATION_TYPE, eventId, dataSize, lpData, lpszFmt, args);
174 bool Warning(DWORD eventId, LPCTSTR lpszFmt, ...)
const
177 va_start(args, lpszFmt);
178 bool r = m_Write(EVENTLOG_WARNING_TYPE, eventId, 0, NULL, lpszFmt, args);
193 bool Warning(DWORD eventId,
size_t dataSize, LPCVOID lpData, LPCTSTR lpszFmt, ...)
const
195 ASSERT( ! ::IsBadReadPtr(lpData, dataSize) );
197 va_start(args, lpszFmt);
198 bool r = m_Write(EVENTLOG_WARNING_TYPE, eventId, dataSize, lpData, lpszFmt, args);
211 bool Error(DWORD eventId, LPCTSTR lpszFmt, ...)
const
214 va_start(args, lpszFmt);
215 bool r = m_Write(EVENTLOG_ERROR_TYPE, eventId, 0, NULL, lpszFmt, args);
230 bool Error(DWORD eventId,
size_t dataSize, LPCVOID lpData, LPCTSTR lpszFmt, ...)
const
232 ASSERT( ! ::IsBadReadPtr(lpData, dataSize) );
234 va_start(args, lpszFmt);
235 bool r = m_Write(EVENTLOG_ERROR_TYPE, eventId, dataSize, lpData, lpszFmt, args);
242 LPCTSTR m_KeyName(
void)
const
244 return _T(
"SYSTEM\\CurrentControlSet\\Services\\Eventlog\\Application");
247 bool m_Write(WORD type, DWORD eventId,
size_t binarySize, LPCVOID lpBinary, LPCTSTR lpszFmt, va_list V)
const
252 LPCTSTR lpszMsg = str;
253 HANDLE h = ::RegisterEventSource(NULL, m_sourceName);
256 _GetLastError(
"RegisterEventSource");
259 r = !! ::ReportEvent(h, type, 0, eventId, NULL, 1,
static_cast<DWORD
>(binarySize), &lpszMsg,
const_cast<LPVOID
>(lpBinary));
262 _GetLastError(
"ReportEvent");
264 ::DeregisterEventSource(h);
bool RegistEventSource(LPCTSTR lpszModuleName=NULL)
[登録] イベントソース登録.
void SetSourceName(LPCTSTR lpszSourceName)
[設定] ソース名設定.
bool Error(DWORD eventId, LPCTSTR lpszFmt,...) const
[出力] エラー出力.
bool Warning(DWORD eventId, size_t dataSize, LPCVOID lpData, LPCTSTR lpszFmt,...) const
[出力] 警告出力(データ付き).
bool Information(DWORD eventId, size_t dataSize, LPCVOID lpData, LPCTSTR lpszFmt,...) const
[出力] 情報出力(データ付き).
bool Error(DWORD eventId, size_t dataSize, LPCVOID lpData, LPCTSTR lpszFmt,...) const
[出力] エラー出力(データ付き).
bool Information(DWORD eventId, LPCTSTR lpszFmt,...) const
[出力] 情報出力.
void UnregistEventSource(void)
[登録] イベントソース登録解除.
bool Warning(DWORD eventId, LPCTSTR lpszFmt,...) const
[出力] 警告出力.
LPCTSTR GetSourceName(void) const
[取得] ソース名取得.
virtual bool DeleteSection(LPCTSTR lpszSectionName)
[削除] 指定セクション削除
void FormatV(const TYP *lpszFormat, va_list V)
[代入] 書式付き文字列代入.
bool IsEmpty(void) const
[確認] 空チェック
void ReleaseBuffer(void)
[操作] 割り当てたバッファを開放.
TYP * GetBuffer(size_t iLength=0)
[操作] 書き込みバッファ要求.
bool WriteString(LPCTSTR lpszKey, LPCTSTR lpszValue)
[追加] 文字列情報記録
CStr GetProcessName(void)
[取得] プロセスネーム取得.