94 lines
1.3 KiB
C++
94 lines
1.3 KiB
C++
/*
|
|
* Copyright (c) 1998 Microsoft Corporation
|
|
*
|
|
* Module Name:
|
|
*
|
|
* logfile.h
|
|
*
|
|
* Abstract:
|
|
*
|
|
* This file contains code to log messages to a file.
|
|
*
|
|
* Author:
|
|
*
|
|
* Breen Hagan (BreenH) Oct-02-98
|
|
*
|
|
* Environment:
|
|
*
|
|
* User Mode
|
|
*/
|
|
|
|
#ifndef _LSOC_LOGFILE_H_
|
|
#define _LSOC_LOGFILE_H_
|
|
|
|
/*
|
|
* Constants.
|
|
*/
|
|
|
|
#define CRLF "\r\n"
|
|
|
|
/*
|
|
* LogFile Class.
|
|
*/
|
|
|
|
class LogFile
|
|
{
|
|
public:
|
|
|
|
//
|
|
// Constructor and destructor.
|
|
//
|
|
|
|
LogFile(
|
|
);
|
|
|
|
~LogFile(
|
|
);
|
|
|
|
//
|
|
// Standard functions.
|
|
//
|
|
|
|
VOID
|
|
Close(
|
|
VOID
|
|
);
|
|
|
|
DWORD
|
|
Initialize(
|
|
IN LPCTSTR pszLogFile,
|
|
IN LPCTSTR pszLogModule
|
|
);
|
|
|
|
DWORD
|
|
__cdecl
|
|
LogMessage(
|
|
LPCTSTR pszFormat,
|
|
...
|
|
);
|
|
|
|
private:
|
|
BOOL m_fInitialized;
|
|
HANDLE m_hFile;
|
|
TCHAR m_szLogFile[MAX_PATH + 1];
|
|
TCHAR m_szLogModule[MAX_PATH + 1];
|
|
|
|
};
|
|
|
|
//
|
|
// The following permits a macro to reference a global variable for
|
|
// the log file without putting the 'extern ...' line in each source
|
|
// file. Because of this, however, logfile.h can not be included in
|
|
// a precompiled header.
|
|
//
|
|
|
|
#ifndef _LSOC_LOGFILE_CPP_
|
|
extern LogFile SetupLog;
|
|
#endif
|
|
|
|
#define LOGCLOSE SetupLog.Close
|
|
#define LOGINIT(x, y) SetupLog.Initialize(x, y)
|
|
#define LOGMESSAGE SetupLog.LogMessage
|
|
|
|
#endif // _LSOC_LOGFILE_H_
|