windows-nt/Source/XPSP1/NT/termsrv/license/tlserver/setup/logfile.h

94 lines
1.3 KiB
C
Raw Normal View History

2020-09-26 03:20:57 -05:00
/*
* 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_