📄 logcore.cpp
字号:
/*********************************************************************************
*
* logcore.cpp : 25.03.2002
* support log engine
*
*********************************************************************************/
#ifdef _WIN32
#include <windows.h>
#include <stdio.h>
#include <tchar.h>
#else
#error OS include needed
#endif
#include "logcore.h"
static TCHAR szLogFile[100] = {0};
static int nLogCount = 0;
// return log init status
BOOL Log_IsInit()
{
return nLogCount;
}
// init log file and write first message
BOOL Log_InitFile(TCHAR* szFile, BOOL bRewrite)
{
_tcscpy(szLogFile, szFile);
nLogCount = 0;
if (bRewrite)
{
FILE* hFile = _tfopen(szLogFile, TEXT("w+t"));
if (!hFile)
return FALSE;
fclose(hFile);
}
Log_WriteMsg(TEXT("---------------------------------------------"));
return Log_WriteMsg(TEXT("Log Begin"));
}
// write mesage to log
BOOL Log_WriteMsg(TCHAR* szMessage)
{
TCHAR szMsg[500];
TCHAR szTime[100];
SYSTEMTIME stTime;
FILE* hFile = _tfopen(szLogFile, TEXT("a+t"));
if (!hFile)
return FALSE;
#ifdef _WIN32
GetLocalTime(&stTime);
_stprintf(szTime,TEXT("|%02d.%02d.%04d=%02d:%02d:%02d|"),
stTime.wDay, stTime.wMonth, stTime.wYear, stTime.wHour, stTime.wMinute, stTime.wSecond);
#else
#error OS time support must be implemented
#endif
_stprintf(szMsg,TEXT("%4.4d%s '%s'\n"),nLogCount++,szTime, szMessage);
_fputts(szMsg, hFile);
fclose(hFile);
return TRUE;
}
BOOL Log_WriteMsg(TCHAR* szMessage, int nFirst)
{
TCHAR szMsg[500];
_stprintf(szMsg, szMessage, nFirst);
return Log_WriteMsg(szMsg);
}
BOOL Log_WriteMsg(TCHAR* szMessage, int nFirst, int nSecond)
{
TCHAR szMsg[500];
_stprintf(szMsg, szMessage, nFirst, nSecond);
return Log_WriteMsg(szMsg);
}
BOOL Log_WriteMsg(TCHAR* szMessage, TCHAR* szItem1)
{
TCHAR szMsg[500];
_stprintf(szMsg, szMessage, szItem1);
return Log_WriteMsg(szMsg);
}
BOOL Log_Write( TCHAR* szFormat, ... )
{
TCHAR szMsg[500];
va_list argList;
va_start(argList, szFormat);
_vsntprintf( szMsg, sizeof(szMsg)/sizeof(szMsg[0]), szFormat, argList );
va_end(argList);
return Log_WriteMsg(szMsg);
}
// write end mesage
BOOL Log_End()
{
return Log_WriteMsg(TEXT("Log End"));
}
BOOL Log_WriteErr(TCHAR* szMessage)
{
TCHAR szMsg[500];
_stprintf(szMsg, TEXT("!ERROR! %s"),szMessage);
return Log_WriteMsg(szMsg);
}
BOOL Log_WriteErr(TCHAR* szMessage,TCHAR* szItem1)
{
TCHAR szMsg[500];
_stprintf(szMsg, TEXT("!ERROR! %s"),szMessage);
return Log_WriteMsg(szMsg, szItem1);
}
BOOL Log_WriteErr(TCHAR* szMessage, int nFirst)
{
TCHAR szMsg[500];
_stprintf(szMsg, TEXT("!ERROR! %s"),szMessage);
return Log_WriteMsg(szMsg, nFirst);
}
BOOL Log_WriteErr(TCHAR* szMessage, int nFirst, int nSecond)
{
TCHAR szMsg[500];
_stprintf(szMsg, TEXT("!ERROR! %s"),szMessage);
return Log_WriteMsg(szMsg, nFirst, nSecond);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -