From 08215fc9a36a1648e1a5040ffe5696b96483c3b9 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 월, 01 11월 2021 14:39:43 +0900
Subject: [PATCH] Ongoing90 #3684 CF AOI Review 전설비 Review History Defect이미지 클릭시 Offset 자동 계산 기능 추가

---
 ReviewSystem/ReviewSystem/stdafx.h |   63 ++++++++++++++++++++++++++-----
 1 files changed, 53 insertions(+), 10 deletions(-)

diff --git a/ReviewSystem/ReviewSystem/stdafx.h b/ReviewSystem/ReviewSystem/stdafx.h
index adcb7cf..68b06cc 100644
--- a/ReviewSystem/ReviewSystem/stdafx.h
+++ b/ReviewSystem/ReviewSystem/stdafx.h
@@ -38,6 +38,9 @@
 #include "CHReviewResult/GlassResult.h"
 #include "CHReviewSetting/MotorParameter.h"
 
+#include <DbgHelp.h> 
+#pragma comment ( lib, "DbgHelp" )
+
 #include <WinNetWk.h>
 //#pragma comment(lib,"Mpr.lib")
 
@@ -74,19 +77,33 @@
 #define ID_TIMER_SEND_SIGNAL_ALIVE			(WM_USER + 107)
 
 
-#define _REVIEW_SERVER_BASE_PATH_					_T("C:\\DIT_Review")
-#define _REVIEW_SERVER_LOG_PATH_					_T("C:\\DIT_Review\\ReviewServerLog")
-#define _REVIEW_RECIPE_PATH_						_T("C:\\DIT_Review\\Recipe")
-#define _REVIEW_REF_RECIPE_PATH_					_T("C:\\DIT_Review\\Recipe\\Reference")
-#define _REVIEW_SERVER_CONFIG_PATH_					_T("C:\\DIT_Review\\ReviewServerConfig")
-#define _REVIEW_SERVER_SYSTEM_SETTING_FILE_PATH_	_T("C:\\DIT_Review\\ReviewServerConfig\\SystemSetting.cfg")
+#define _REVIEW_SERVER_BASE_PATH_					_T("D:\\DIT_Review") //210805
+#define _REVIEW_SERVER_LOG_PATH_					_T("D:\\DIT_Review\\ReviewServerLog")
+#define _REVIEW_RECIPE_PATH_						_T("D:\\DIT_Review\\Recipe")
+#define _REVIEW_REF_RECIPE_PATH_					_T("D:\\DIT_Review\\Recipe\\Reference")
+#define _REVIEW_SERVER_CONFIG_PATH_					_T("D:\\DIT_Review\\ReviewServerConfig")
+#define _REVIEW_SERVER_SYSTEM_SETTING_FILE_PATH_	_T("D:\\DIT_Review\\ReviewServerConfig\\SystemSetting.cfg")
 #define _SYSTEM_SETTING_TITLE_						_T("ReviewSystemSetting")
 #define _RECIPE_EDITOR_TITLE_						_T("ReviewRecipeEditor")
-#define _REVIEW_LOGIN_LOG_PATH_						_T("C:\\DIT_Review\\ReviewServerLog\\LoginLog")
-#define _REVIEW_REFLOW_RECIPE_PATH_					_T("C:\\DIT_Review\\Recipe\\Reflow")
-#define ALIGN_TEMPLATE_PATH							_T("C:\\DIT_Review\\Recipe\\AlignImage")
+#define _REVIEW_LOGIN_LOG_PATH_						_T("D:\\DIT_Review\\ReviewServerLog\\LoginLog")
+#define _REVIEW_REFLOW_RECIPE_PATH_					_T("D:\\DIT_Review\\Recipe\\Reflow")
+#define ALIGN_TEMPLATE_PATH							_T("D:\\DIT_Review\\Recipe\\AlignImage")
 #define _REVIEW_RECIPE_BACKUP_PATH_CPJT				_T("\\\\126.100.100.5\\d\\DIT Back up\\DIT Review\\Recipe")
 #define _REVIEW_SERVER_SYSTEM_SETTING_BACKUP_PATH_CPJT	_T("\\\\126.100.100.5\\d\\DIT Back up\\DIT Review\\ReviewServerConfig")
+
+//#define _REVIEW_SERVER_BASE_PATH_					_T("C:\\DIT_Review")
+//#define _REVIEW_SERVER_LOG_PATH_					_T("C:\\DIT_Review\\ReviewServerLog")
+//#define _REVIEW_RECIPE_PATH_						_T("C:\\DIT_Review\\Recipe")
+//#define _REVIEW_REF_RECIPE_PATH_					_T("C:\\DIT_Review\\Recipe\\Reference")
+//#define _REVIEW_SERVER_CONFIG_PATH_					_T("C:\\DIT_Review\\ReviewServerConfig")
+//#define _REVIEW_SERVER_SYSTEM_SETTING_FILE_PATH_	_T("C:\\DIT_Review\\ReviewServerConfig\\SystemSetting.cfg")
+//#define _SYSTEM_SETTING_TITLE_						_T("ReviewSystemSetting")
+//#define _RECIPE_EDITOR_TITLE_						_T("ReviewRecipeEditor")
+//#define _REVIEW_LOGIN_LOG_PATH_						_T("C:\\DIT_Review\\ReviewServerLog\\LoginLog")
+//#define _REVIEW_REFLOW_RECIPE_PATH_					_T("C:\\DIT_Review\\Recipe\\Reflow")
+//#define ALIGN_TEMPLATE_PATH							_T("C:\\DIT_Review\\Recipe\\AlignImage")
+//#define _REVIEW_RECIPE_BACKUP_PATH_CPJT				_T("\\\\126.100.100.5\\d\\DIT Back up\\DIT Review\\Recipe")
+//#define _REVIEW_SERVER_SYSTEM_SETTING_BACKUP_PATH_CPJT	_T("\\\\126.100.100.5\\d\\DIT Back up\\DIT Review\\ReviewServerConfig")
 
 
 #define TOTAL_WINDOW_SIZE_X		1920
@@ -403,4 +420,30 @@
 	char			strMessageString[MAX_PATH];
 };
 
-BOOL KillProcess(CString ProcessName);BOOL getStateProcess(CString ProcessName);
\ No newline at end of file
+BOOL KillProcess(CString ProcessName);BOOL getStateProcess(CString ProcessName);
+
+// �꽑�뼵 
+static LONG CALLBACK TopLevelExceptionFilterCallBack(EXCEPTION_POINTERS* exceptionInfo);
+
+LONG CALLBACK TopLevelExceptionFilterCallBack(EXCEPTION_POINTERS * exceptionInfo)
+{
+	MINIDUMP_EXCEPTION_INFORMATION dmpInfo = { 0 };
+	dmpInfo.ThreadId = ::GetCurrentThreadId(); // Threae ID 
+	dmpInfo.ExceptionPointers = exceptionInfo; // Exception Info 
+	dmpInfo.ClientPointers = FALSE;
+	CTime time;
+	CString strStamp;
+
+	SYSTEMTIME   currentTime;
+	::GetLocalTime(&currentTime);
+	time = CTime::GetCurrentTime();
+	strStamp.Format(_T("Dump\\%02d_%02d_%02d_%02d_%02d_%02d.dmp"), time.GetYear(), time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond());
+
+	HANDLE hFile = CreateFile(strStamp, GENERIC_WRITE, FILE_SHARE_WRITE, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
+
+	// �뜡�봽 �깮�꽦
+	BOOL bWrite = ::MiniDumpWriteDump(::GetCurrentProcess(), ::GetCurrentProcessId(), hFile, MiniDumpNormal, &dmpInfo, NULL, NULL);
+
+	return 0L;
+
+}
\ No newline at end of file

--
Gitblit v1.9.3