#define TRACE_PRINT(pszFmt, ...) do { FILE* file ; if (0 == _tfopen_s(&file, _T("shmm.error.log"), _T("a"))) { TCHAR sdate[32] ,stime[32]; _strdate_s(sdate, 32) ; _strtime_s(stime, 32) ; _ftprintf_s(file,_T(" DateTime : %s %s : FILE:%s - FUN:%s - LINE:%d MESSAGE : ") ##pszFmt _T(" ") , sdate ,stime, __FILE__, __FUNCTION__, __LINE__, ##__VA_ARGS__); fclose(file); } }while (0)