This commit is contained in:
biosvos
2026-08-07 17:38:18 +09:00
commit 873193a243
9613 changed files with 2755992 additions and 0 deletions
@@ -0,0 +1,87 @@
#include "stdafx.h"
#include "TransLogger.h"
CTransLogger::CTransLogger()
{
}
CTransLogger::~CTransLogger()
{
}
HANDLE CTransLogger::m_hFile = INVALID_HANDLE_VALUE;
///////////////////////////////////////////////////////////////////////////////////////////
/// Operations
///////////////////////////////////////////////////////////////////////////////////////////
bool CTransLogger::Create(LPCTSTR lpszPathName, bool bOverwrite)
{
if(m_hFile != INVALID_HANDLE_VALUE)
return true;
m_hFile = ::CreateFile(lpszPathName, GENERIC_WRITE, FILE_SHARE_READ, NULL, bOverwrite ? CREATE_ALWAYS : OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if(m_hFile == INVALID_HANDLE_VALUE)
return false;
if(!bOverwrite)
::SetFilePointer(m_hFile, 0, NULL, FILE_END);
return true;
}
bool CTransLogger::Close()
{
if(m_hFile == INVALID_HANDLE_VALUE)
return false;
bool bClose = ::CloseHandle(m_hFile) ? true :false;
m_hFile = INVALID_HANDLE_VALUE;
return bClose;
}
bool CTransLogger::Flush()
{
if(m_hFile == INVALID_HANDLE_VALUE)
return false;
return ::FlushFileBuffers(m_hFile) ? true : false;
}
DWORD CTransLogger::Write(LPCTSTR lpszFormat, ...)
{
if(m_hFile == INVALID_HANDLE_VALUE)
return -1;
TCHAR* pszMessage = NULL;
DWORD dwSize = 0;
va_list listArgument;
va_start(listArgument, lpszFormat);
dwSize = (DWORD)::_vsctprintf(lpszFormat, listArgument) + 1;
pszMessage = new TCHAR[dwSize];
::memset(pszMessage, NULL, dwSize);
dwSize = (DWORD)::_vstprintf(pszMessage, lpszFormat, listArgument);
va_end(listArgument);
if(dwSize < 0)
{
delete [] pszMessage;
return -1;
}
DWORD dwWritten = 0;
bool bWritten = false;
bWritten = ::WriteFile(m_hFile, pszMessage, dwSize, &dwWritten, NULL) ? true : false;
if(bWritten)
Flush();
delete [] pszMessage;
return bWritten ? dwWritten : -1;
}