From 308273fef97381356e96fcd9c17011409a3c2920 Mon Sep 17 00:00:00 2001
From: kojingeun <diteam.co.kr>
Date: 수, 07 6월 2023 10:28:21 +0900
Subject: [PATCH] Ongoing50 #4517 CF AOI Review 결과 파일 찾기 실패 개선 1. Find Bin File 찾는 Library 변경  - CRT _findfirsti64 / _findnexti64 -> C++17 Filesystem directory_iterator  - 파일 탐색 시간 20k Files(80GB) 1sec 소요

---
 ReviewSystem/ReviewSystem/DisplayMessage.cpp |   26 ++++++++++++++++++++------
 1 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/ReviewSystem/ReviewSystem/DisplayMessage.cpp b/ReviewSystem/ReviewSystem/DisplayMessage.cpp
index 2581069..f8e08c6 100644
--- a/ReviewSystem/ReviewSystem/DisplayMessage.cpp
+++ b/ReviewSystem/ReviewSystem/DisplayMessage.cpp
@@ -33,7 +33,9 @@
 void CDisplayMessage::SetPath(const CString& strPath)
 {
 	m_strLogPath = strPath;
-
+	CString m_GlobalLogPath;
+	m_strLogFile.Format(_T("D:\\DIT_LogData\\%04d%02d%02d"), m_strLogPath, m_TimeLogFile.GetYear(), m_TimeLogFile.GetMonth(), m_TimeLogFile.GetDay());
+	CreateDirectory(m_strLogFile, NULL);
 	CreateDirectory(m_strLogPath, NULL);
 
 	MakeLogFile();
@@ -42,6 +44,10 @@
 BOOL CDisplayMessage::MakeLogFile()
 {
 	// Log 泥섎━
+	CString m_GlobalLogPath;
+	m_strLogFile.Format(_T("D:\\DIT_LogData\\%04d%02d%02d"), m_TimeLogFile.GetYear(), m_TimeLogFile.GetMonth(), m_TimeLogFile.GetDay());
+	CreateDirectory(m_strLogFile, NULL);
+
 	if (m_strLogPath.IsEmpty())
 		return FALSE;
 
@@ -78,13 +84,20 @@
 {
 	va_list list;
 	TCHAR strText[2000] = {0};
+	try
+	{
+		va_start(list, lpstrFormat);
+		_vstprintf_s(strText, lpstrFormat, list);
+		va_end(list);
 
-	va_start(list, lpstrFormat);
-	_vstprintf_s(strText, lpstrFormat, list);
-	va_end(list);
+		CString* pstrLog = new CString(strText);
+		PostThreadMessage(m_ThreadId, WM_DIPLAY_LOG, reinterpret_cast<WPARAM>(pstrLog), 0);
+	}
+	catch (...)
+	{
+		return;
+	}
 
-	CString* pstrLog = new CString(strText);
-	PostThreadMessage(m_ThreadId, WM_DIPLAY_LOG, reinterpret_cast<WPARAM>(pstrLog), 0);
 
 // 	WriteToFile(strText);
 // 
@@ -152,6 +165,7 @@
 		case WM_DIPLAY_LOG:
 			
 			g_pLog->ThreadDisplayMessage(*pstrLog);
+			delete pstrLog;
 			break;
 
 		default:

--
Gitblit v1.9.3