windows-nt/Source/XPSP1/NT/enduser/windows.com/wuv3/inc/applog.h
2020-09-26 16:20:57 +08:00

69 lines
1.1 KiB
C++

//=======================================================================
//
// Copyright (c) 1999 Microsoft Corporation. All Rights Reserved.
//
// File: applog.h
//
// Purpose: Application logging
//
// History: 22-Feb-99 YAsmi Created
//
//=======================================================================
#ifndef _APPLOG_H_
#define _APPLOG_H_
#define LOG_FIELD_SEPARATOR "|"
class CAppLog
{
public:
CAppLog(LPCTSTR pszLogFileName = NULL);
~CAppLog();
void SetLogFile(LPCTSTR pszLogFileName);
//
// writing
//
void Log(LPCSTR pszLogStr);
//
// reading
//
void StartReading();
BOOL ReadLine();
LPCSTR GetLineStr();
BOOL CopyNextField(LPSTR pszBuf, int cBufSize);
void StopReading();
static void FormatErrMsg(HRESULT hr, LPSTR pszBuf, int cBufSize);
LPCTSTR GetLogFile()
{
return m_pszLogFN;
}
private:
void CheckBuf(DWORD dwSize);
LPTSTR m_pszLogFN;
LPSTR m_pszLine;
LPSTR m_pszBuf;
DWORD m_dwBufLen;
LPSTR m_pszFldParse;
LPSTR m_pFileBuf;
DWORD m_dwFileOfs;
DWORD m_dwFileSize;
};
#endif // _APPLOG_H_