给你段代码
//----------*.h---------
#define _ERROR_LOG_
void StartErrorLog(const char * fname);
int  printErrorLog(const char *fmt, ...);
void EndErrorLog();
//----------------------
//----------*.cpp-------#include "stdafx.h"
#include "ErrorLog.h"#ifdef _ERROR_LOG_
FILE* fp=NULL;
char strFileName[512];
#endifvoid StartErrorLog(const char * fname)
{
#ifdef _ERROR_LOG_
strcpy(strFileName,fname);
if((fp=fopen(strFileName,"a+"))==NULL)
AfxMessageBox("错误日志初始化出错");
CTime time;
CString str;
time=CTime::GetCurrentTime();
str=time.Format("%Y-%m-%d-%H-%M\n");
printErrorLog(str);
printErrorLog("错误日志记录开始\n");#endif
}
int printErrorLog(const char *fmt,...)
{
#ifdef _ERROR_LOG_
char s[512];
va_list argptr;
int cnt; va_start(argptr,fmt);
cnt=vsprintf(s,fmt,argptr);
va_end(argptr); if(fp!=NULL)
{
fprintf(fp,s);
fflush(fp);
}
//fclose(fp);
return cnt;
#else
return 0;
#endif
}
void EndErrorLog()
{
#ifdef _ERROR_LOG_
CTime time;
CString str;
time=CTime::GetCurrentTime();
str=time.Format("%Y-%m-%d-%H-%M\n");
printErrorLog(str);
printErrorLog("错误日志记录停止\n");
if(fp)
fclose(fp);
#endif
} //----------------------