From 8ac7359b04409c2a1426f9a179c00b1c966d0146 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 화, 10 8월 2021 19:02:41 +0900
Subject: [PATCH] Ongoing50 #3562 CF AOI Review 실행 프로그램 경로 변경

---
 ReviewSystem/ReviewSystemSetting/stdafx.h                   |   39 +++--
 ReviewSystem/ReviewSystem/stdafx.h                          |   32 +++-
 ReviewSystem/ReviewSystem/CameraControlReview.cpp           |    6 
 ReviewSystem/ReviewRecipeEditor/ReviewRecipeEditorDlg.cpp   |  156 +++++++++++-----------
 ReviewSystem/ReviewSystem/CameraControlAlign.cpp            |    3 
 ReviewSystem/ReviewSystem/DlgReviewOffSetTool.h             |    6 
 ReviewSystem/ReviewSystem/MainFrm.cpp                       |    6 
 ReviewSystem/include/M_AutoDiagnosisManager/DiagnosisInfo.h |   29 ++--
 ReviewSystem/include/CHReviewRecipe/RsRcpAlignInfo.h        |    8 
 ReviewSystem/ReviewRecipeEditor/stdafx.h                    |   49 +++---
 ReviewSystem/ReviewSystem/FileUploadControl.cpp             |    7 
 ReviewSystem/ReviewSystemSetting/ReviewSystemSettingDlg.cpp |   77 +++++-----
 12 files changed, 226 insertions(+), 192 deletions(-)

diff --git a/ReviewSystem/ReviewRecipeEditor/ReviewRecipeEditorDlg.cpp b/ReviewSystem/ReviewRecipeEditor/ReviewRecipeEditorDlg.cpp
index b8f0898..f527b8c 100644
--- a/ReviewSystem/ReviewRecipeEditor/ReviewRecipeEditorDlg.cpp
+++ b/ReviewSystem/ReviewRecipeEditor/ReviewRecipeEditorDlg.cpp
@@ -1,5 +1,5 @@
 
-// ReviewRecipeEditorDlg.cpp : 구현 파일
+// ReviewRecipeEditorDlg.cpp : 占쏙옙占쏙옙 占쏙옙占쏙옙
 //
 
 #include "stdafx.h"
@@ -17,7 +17,7 @@
 #endif
 
 
-// CReviewRecipeEditorDlg 대화 상자
+// CReviewRecipeEditorDlg 占쏙옙화 占쏙옙占쏙옙
 
 CReviewRecipeEditorDlg::CReviewRecipeEditorDlg(CWnd* pParent /*=NULL*/)
 	: CDialog(CReviewRecipeEditorDlg::IDD, pParent)
@@ -162,18 +162,18 @@
 END_MESSAGE_MAP()
 
 
-// CReviewRecipeEditorDlg 메시지 처리기
+// CReviewRecipeEditorDlg 占쌨쏙옙占쏙옙 처占쏙옙占쏙옙
 
 BOOL CReviewRecipeEditorDlg::OnInitDialog()
 {
 	CDialog::OnInitDialog();
 
-	// 이 대화 상자의 아이콘을 설정합니다. 응용 프로그램의 주 창이 대화 상자가 아닐 경우에는
-	//  프레임워크가 이 작업을 자동으로 수행합니다.
-	SetIcon(m_hIcon, TRUE);			// 큰 아이콘을 설정합니다.
-	SetIcon(m_hIcon, FALSE);		// 작은 아이콘을 설정합니다.
+	// 占쏙옙 占쏙옙화 占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙. 占쏙옙占쏙옙 占쏙옙占싸그뤄옙占쏙옙 占쏙옙 창占쏙옙 占쏙옙화 占쏙옙占쌘곤옙 占싣댐옙 占쏙옙荑∽옙占�
+	//  占쏙옙占쏙옙占쌈울옙크占쏙옙 占쏙옙 占쌜억옙占쏙옙 占쌘듸옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙.
+	SetIcon(m_hIcon, TRUE);			// 큰 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙.
+	SetIcon(m_hIcon, FALSE);		// 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙.
 
-	// TODO: 여기에 추가 초기화 작업을 추가합니다.
+	// TODO: 占쏙옙占썩에 占쌩곤옙 占십깍옙화 占쌜억옙占쏙옙 占쌩곤옙占쌌니댐옙.
 	//m_bReviewSystemPC = IsReviewSystemPC();
 	m_bReviewSystemPC = TRUE;
 	pReviewRecipeEditor = this;
@@ -189,29 +189,29 @@
 	InitRecipeListGridControl();
 	RefreshRecipeList();
 
-	return TRUE;  // 포커스를 컨트롤에 설정하지 않으면 TRUE를 반환합니다.
+	return TRUE;  // 占쏙옙커占쏙옙占쏙옙 占쏙옙트占싼울옙 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 TRUE占쏙옙 占쏙옙환占쌌니댐옙.
 }
 
-// 대화 상자에 최소화 단추를 추가할 경우 아이콘을 그리려면
-//  아래 코드가 필요합니다. 문서/뷰 모델을 사용하는 MFC 응용 프로그램의 경우에는
-//  프레임워크에서 이 작업을 자동으로 수행합니다.
+// 占쏙옙화 占쏙옙占쌘울옙 占쌍쇽옙화 占쏙옙占쌩몌옙 占쌩곤옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙占쏙옙占쏙옙 占쌓몌옙占쏙옙占쏙옙
+//  占싣뤄옙 占쌘드가 占십울옙占쌌니댐옙. 占쏙옙占쏙옙/占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙求占� MFC 占쏙옙占쏙옙 占쏙옙占싸그뤄옙占쏙옙 占쏙옙荑∽옙占�
+//  占쏙옙占쏙옙占쌈울옙크占쏙옙占쏙옙 占쏙옙 占쌜억옙占쏙옙 占쌘듸옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙.
 
 void CReviewRecipeEditorDlg::OnPaint()
 {
 	if (IsIconic())
 	{
-		CPaintDC dc(this); // 그리기를 위한 디바이스 컨텍스트
+		CPaintDC dc(this); // 占쌓몌옙占썩를 占쏙옙占쏙옙 占쏙옙占쏙옙決占� 占쏙옙占쌔쏙옙트
 
 		SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
 
-		// 클라이언트 사각형에서 아이콘을 가운데에 맞춥니다.
+		// 클占쏙옙占싱억옙트 占썹각占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏘데占쏙옙 占쏙옙占쏙옙求占�.
 		int cxIcon = GetSystemMetrics(SM_CXICON);
 		int cyIcon = GetSystemMetrics(SM_CYICON);
 		CRect rect;
 		GetClientRect(&rect);
 		int x = (rect.Width() - cxIcon + 1) / 2;
 		int y = (rect.Height() - cyIcon + 1) / 2;	
-		// 아이콘을 그립니다.
+		// 占쏙옙占쏙옙占쏙옙占쏙옙 占쌓몌옙占싹댐옙.
 		dc.DrawIcon(x, y, m_hIcon);
 	}
 	else
@@ -220,8 +220,8 @@
 	}
 }
 
-// 사용자가 최소화된 창을 끄는 동안에 커서가 표시되도록 시스템에서
-//  이 함수를 호출합니다.
+// 占쏙옙占쏙옙微占� 占쌍쇽옙화占쏙옙 창占쏙옙 占쏙옙占� 占쏙옙占싫울옙 커占쏙옙占쏙옙 표占시되듸옙占쏙옙 占시쏙옙占쌜울옙占쏙옙
+//  占쏙옙 占쌉쇽옙占쏙옙 호占쏙옙占쌌니댐옙.
 HCURSOR CReviewRecipeEditorDlg::OnQueryDragIcon()
 {
 	return static_cast<HCURSOR>(m_hIcon);
@@ -230,7 +230,7 @@
 
 void CReviewRecipeEditorDlg::OnBnClickedButtonReviewRcpEditorCreate()
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
 	BOOL bUseRecipeInfo = FALSE;
 	int nIdx;
 	CString strRecipeName, strNewRecipeName, strMessage;
@@ -240,7 +240,7 @@
 	if(cellID.row > 0 && cellID.col > 0)
 	{
 		strRecipeName = m_ctrlGridRecipeList.GetItemText(cellID.row, 1);
-		strMessage.Format(_T("Do you want to create new recipe using %s recipe information?"), strRecipeName);//_T("%s 레시피 정보를 이용하여 생성하시겠습니까?"), strRecipeName);
+		strMessage.Format(_T("Do you want to create new recipe using %s recipe information?"), strRecipeName);//_T("%s 占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 占싱울옙占싹울옙 占쏙옙占쏙옙占싹시겠쏙옙占싹깍옙?"), strRecipeName);
 
 		//if (IDYES == AfxMessageBox(strMessage, MB_YESNO | MB_ICONQUESTION))
 		//{
@@ -268,11 +268,11 @@
 		if(nIdx != -1)
 		{
 			strTemp = strTemp.Mid(nIdx + 1);
-			strNewPath.Format(_T("\\\\%s\\C\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
+			strNewPath.Format(_T("\\\\%s\\D\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp); //210805
 		}
 		else
 		{
-			strNewPath.Format(_T("\\\\%s\\C\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strNewRecipeName);
+			strNewPath.Format(_T("\\\\%s\\D\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strNewRecipeName);  //210805
 		}
 	}
 
@@ -290,22 +290,22 @@
 			if(nIdx != -1)
 			{
 				strTemp = strTemp.Mid(nIdx + 1);
-				strSrcPath.Format(_T("\\\\%s\\C\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
+				strSrcPath.Format(_T("\\\\%s\\D\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp); //210805
 			}
 			else
 			{
-				strSrcPath.Format(_T("\\\\%s\\C\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strRecipeName);
+				strSrcPath.Format(_T("\\\\%s\\D\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strRecipeName);  //210805
 			}
 		}
 			
 		if(CopyFile(strSrcPath, strNewPath, FALSE) == FALSE)
 		{
-			strMessage.Format(_T("Fail to create %s recipe"));//_T("%s 레시피 생성 실패!"));
+			strMessage.Format(_T("Fail to create %s recipe"));//_T("%s 占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙!"));
 			AfxMessageBox(strMessage);
 		}
 		else
 		{
-			//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD START
+			//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD START
 			CString strBackupPath = _REVIEW_RECIPE_BACKUP_PATH_CPJT;
 			CreateDirectory(strBackupPath, NULL);
 
@@ -316,9 +316,9 @@
 			strSource.Format(_T("%s\\%s.rcp"), _REVIEW_RECIPE_PATH_, strNewRecipeName);
 			strDest.Format(_T("%s\\%s.rcp"), strBackupPath, strNewRecipeName);
 			CopyFile(strSource, strDest, TRUE);
-			//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD END
+			//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD END
 
-			// [2017:4:17]-[WEZASW] : CIM(Recipe) 보고 항목 추가.
+			// [2017:4:17]-[WEZASW] : CIM(Recipe) 占쏙옙占쏙옙 占쌓몌옙 占쌩곤옙.
 			COPYDATA_RECIPE2REV copyData;
 			copyData.Message = MsgRecipe2Rev_RecipeCreate;
 			copyData.nPPID = _ttoi(strNewRecipeName);
@@ -331,12 +331,12 @@
 
 		if(file.Open(strNewPath, CFile::modeCreate | CFile::modeWrite) == FALSE)
 		{
-			strMessage.Format(_T("Fail to create %s recipe"));//_T("%s 레시피 생성 실패!"));
+			strMessage.Format(_T("Fail to create %s recipe"));//_T("%s 占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙!"));
 			AfxMessageBox(strMessage);
 		}
 		else
 		{
-			strMessage.Format(_T("Please select the default file!"));//_T("먼저 기본 파일을 선택해주세요!"));
+			strMessage.Format(_T("Please select the default file!"));//_T("占쏙옙占쏙옙 占썩본 占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쌍쇽옙占쏙옙!"));
 			AfxMessageBox(strMessage);				
 		}
 
@@ -368,7 +368,7 @@
 
 void CReviewRecipeEditorDlg::OnBnClickedButtonReviewRcpEditorDelete()
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
 	int nIdx;
 	CString strRecipeName, strPath, strMessage, strTemp;
 	CCellID cellID = m_ctrlGridRecipeList.GetFocusCell();
@@ -389,20 +389,20 @@
 			if (nIdx != -1)
 			{
 				strTemp = strTemp.Mid(nIdx + 1);
-				strPath.Format(_T("\\\\%s\\C\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
+				strPath.Format(_T("\\\\%s\\D\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp); //210805
 			}
 			else
 			{
-				strPath.Format(_T("\\\\%s\\C\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strRecipeName);
+				strPath.Format(_T("\\\\%s\\D\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strRecipeName); //210805
 			}
 		}
 
-		//_T("%s 레시피를 삭제하시겠습니까?"), strRecipeName);
+		//_T("%s 占쏙옙占쏙옙占실몌옙 占쏙옙占쏙옙占싹시겠쏙옙占싹깍옙?"), strRecipeName);
 		strMessage.Format(_T("Do you want to delete %s recipe?"), strRecipeName);
 
 		if (IDYES == AfxMessageBox(strMessage, MB_YESNO | MB_ICONQUESTION))
 		{
-			// [2017:5:20]-[WEZASW] : 현재 적용된 Recipe(PPID)는 삭제 금지 요청.
+			// [2017:5:20]-[WEZASW] : 占쏙옙占쏙옙 占쏙옙占쏙옙占� Recipe(PPID)占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙청.
 			if (strRecipeName.Compare(m_strCurrentRecipeName) == 0)
 			{
 				strMessage.Format(_T("Currently applied Recipe(%s) can not be deleted!"), strRecipeName);
@@ -411,16 +411,16 @@
 			}
 
 			DeleteFile(strPath);
-			//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD START
+			//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD START
 			CString strBackupPath = _REVIEW_RECIPE_BACKUP_PATH_CPJT;
 			CString strDest;
 
 			strDest.Format(_T("%s\\%s.rcp"), strBackupPath, strRecipeName);
 			DeleteFile(strDest);
-			//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD END
+			//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD END
 
 
-			// [2017:4:17]-[WEZASW] : CIM(Recipe) 보고 항목 추가.
+			// [2017:4:17]-[WEZASW] : CIM(Recipe) 占쏙옙占쏙옙 占쌓몌옙 占쌩곤옙.
 			COPYDATA_RECIPE2REV copyData;
 			copyData.Message = MsgRecipe2Rev_RecipeDelete;
 			copyData.nPPID = _ttoi(strRecipeName);
@@ -429,7 +429,7 @@
 	}
 	else
 	{
-		AfxMessageBox(_T("Please select recipe."));//_T("레시피를 선택하세요."));
+		AfxMessageBox(_T("Please select recipe."));//_T("占쏙옙占쏙옙占실몌옙 占쏙옙占쏙옙占싹쇽옙占쏙옙."));
 	}
 
 	RefreshRecipeList();
@@ -442,7 +442,7 @@
 
 void CReviewRecipeEditorDlg::OnBnClickedButtonReviewRcpEditorLoad()
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
 	BOOL bReturn;
 	CString strRecipeName;
 	CCellID cellID = m_ctrlGridRecipeList.GetFocusCell();
@@ -456,7 +456,7 @@
 		{
 			m_strCurrentRecipeName = strRecipeName;
 
-			// [2017:4:17]-[WEZASW] : CIM(Recipe) 보고 항목 추가.
+			// [2017:4:17]-[WEZASW] : CIM(Recipe) 占쏙옙占쏙옙 占쌓몌옙 占쌩곤옙.
 			COPYDATA_RECIPE2REV copyData;
 			copyData.Message = MsgRecipe2Rev_RecipeChange;
 			copyData.nPPID = _ttoi(m_strCurrentRecipeName);
@@ -471,7 +471,7 @@
 	}
 	else
 	{
-		AfxMessageBox(_T("Please select recipe."));//_T("레시피를 선택하세요."));
+		AfxMessageBox(_T("Please select recipe."));//_T("占쏙옙占쏙옙占실몌옙 占쏙옙占쏙옙占싹쇽옙占쏙옙."));
 	}
 }
 
@@ -517,7 +517,7 @@
 
 		if (bRet)
 		{
-			// [2017:4:17]-[WEZASW] : CIM(Recipe) 보고 항목 추가.
+			// [2017:4:17]-[WEZASW] : CIM(Recipe) 占쏙옙占쏙옙 占쌓몌옙 占쌩곤옙.
 			COPYDATA_RECIPE2REV copyData;
 			copyData.Message = MsgRecipe2Rev_RecipeModify;
 			copyData.nPPID = _ttoi(RecipeName);
@@ -540,14 +540,14 @@
 			strDest.Format(_T("%s\\%s_%s.rcp"), strBackupPath, RecipeName, strBackupFile);
 			CopyFile(strSource, strDest, TRUE);
 
-			//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD START
+			//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD START
 			strBackupPath = _REVIEW_RECIPE_BACKUP_PATH_CPJT;
 			CreateDirectory(strBackupPath, NULL);
 
 			strSource.Format(_T("%s\\%s.rcp"), _REVIEW_RECIPE_PATH_, RecipeName);
 			strDest.Format(_T("%s\\%s.rcp"), strBackupPath, RecipeName);
 			CopyFile(strSource, strDest, TRUE);
-			//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD END
+			//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD END
 
 			strMessage.Format(_T("Complete to save %s recipe!"), RecipeName);
 			//AfxMessageBox(strMessage);
@@ -567,7 +567,7 @@
 
 void CReviewRecipeEditorDlg::OnBnClickedButtonReviewRcpEditorSave()
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
 	CString strMessage;
 
 	if (m_strCurrentRecipeName.IsEmpty())
@@ -584,7 +584,7 @@
 
 		if (bRet)
 		{
-			// [2017:4:17]-[WEZASW] : CIM(Recipe) 보고 항목 추가.
+			// [2017:4:17]-[WEZASW] : CIM(Recipe) 占쏙옙占쏙옙 占쌓몌옙 占쌩곤옙.
 			COPYDATA_RECIPE2REV copyData;
 			copyData.Message = MsgRecipe2Rev_RecipeModify;
 			copyData.nPPID = _ttoi(m_strCurrentRecipeName);
@@ -607,14 +607,14 @@
 			strDest.Format(_T("%s\\%s_%s.rcp"), strBackupPath, m_strCurrentRecipeName, strBackupFile);
 			CopyFile(strSource, strDest, TRUE);
 
-			//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD START
+			//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD START
 			strBackupPath = _REVIEW_RECIPE_BACKUP_PATH_CPJT;
 			CreateDirectory(strBackupPath, NULL);
 
 			strSource.Format(_T("%s\\%s.rcp"), _REVIEW_RECIPE_PATH_, m_strCurrentRecipeName);
 			strDest.Format(_T("%s\\%s.rcp"), strBackupPath, m_strCurrentRecipeName);
 			CopyFile(strSource, strDest, FALSE);
-			//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD END
+			//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD END
 
 			strMessage.Format(_T("Complete to save %s recipe!"), m_strCurrentRecipeName);
 			AfxMessageBox(strMessage);
@@ -641,7 +641,7 @@
 
 void CReviewRecipeEditorDlg::OnBnClickedButtonReviewrcpEditorExit()
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
 	DestroyWindow();
 }
 
@@ -706,15 +706,15 @@
 void CReviewRecipeEditorDlg::InitTabControl()
 {
 	int nIdx = 0;
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Common"));			//_T("  공통  "));
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Review"));			//_T("  리뷰  "));	
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Common"));			//_T("  占쏙옙占쏙옙  "));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Review"));			//_T("  占쏙옙占쏙옙  "));	
 	m_ctrlTabMain.InsertItem(nIdx++, _T("WSI"));			//_T("  WSI  "));
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Align"));			//_T(" 얼라인 "));
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Judgement"));		//_T(" 판정  "));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Align"));			//_T(" 占쏙옙占쏙옙占� "));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Judgement"));		//_T(" 占쏙옙占쏙옙  "));
 
-	// 미사용으로 제외
-//	m_ctrlTabMain.InsertItem(nIdx++, _T("Measure"));		//_T("  측정  "));
-//	m_ctrlTabMain.InsertItem(nIdx++, _T("Finding Defect"));	//_T(" 결함찾기 "));
+	// 占싱삼옙占쏙옙占쏙옙占� 占쏙옙占쏙옙
+//	m_ctrlTabMain.InsertItem(nIdx++, _T("Measure"));		//_T("  占쏙옙占쏙옙  "));
+//	m_ctrlTabMain.InsertItem(nIdx++, _T("Finding Defect"));	//_T(" 占쏙옙占쏙옙찾占쏙옙 "));
 
 	//m_ctrlTabMain.InsertItem(nIdx++, _T("Glass"));			//_T(" Glass Info "));
 }
@@ -750,19 +750,19 @@
 	Item.mask = GVIF_TEXT;
 	Item.row = nRowIdx;
 	Item.col = nColIdx++;
-	strTemp.Format(_T("Index"));//_T("인덱스"));
+	strTemp.Format(_T("Index"));//_T("占싸듸옙占쏙옙"));
 	Item.strText = strTemp;
 	m_ctrlGridRecipeList.SetItem(&Item);
 
 	Item.row = nRowIdx;
 	Item.col = nColIdx++;
-	strTemp.Format(_T("Recipe Name"));//_T("레시피 이름"));
+	strTemp.Format(_T("Recipe Name"));//_T("占쏙옙占쏙옙占쏙옙 占싱몌옙"));
 	Item.strText = strTemp;
 	m_ctrlGridRecipeList.SetItem(&Item);
 
 	Item.row = nRowIdx;
 	Item.col = nColIdx++;
-	strTemp.Format(_T("Last Modified Date"));//_T("최종 수정 날짜"));
+	strTemp.Format(_T("Last Modified Date"));//_T("占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙짜"));
 	Item.strText = strTemp;
 	m_ctrlGridRecipeList.SetItem(&Item);
 }
@@ -787,7 +787,7 @@
 
 		for(i = 0; i < nRecipeCount; i++)
 		{
-			//레시피 인덱스
+			//占쏙옙占쏙옙占쏙옙 占싸듸옙占쏙옙
 			nColIdx = 0;
 			Item.mask = GVIF_TEXT;
 			Item.row = nRowIdx;
@@ -796,13 +796,13 @@
 			Item.strText = strTemp;
 			m_ctrlGridRecipeList.SetItem(&Item);
 
-			//레시피 이름
+			//占쏙옙占쏙옙占쏙옙 占싱몌옙
 			nColIdx++;
 			strTemp = strArrayRecipeName.GetAt(i);
 			m_ctrlGridRecipeList.SetItemText(nRowIdx, nColIdx, strTemp);
 			m_ctrlGridRecipeList.SetItemState(nRowIdx, nColIdx, GVIS_READONLY);
 
-			//최종 수정 날짜
+			//占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙짜
 			nColIdx++;
 			strTemp = strArrayLastWriteTime.GetAt(i);
 			m_ctrlGridRecipeList.SetItemText(nRowIdx, nColIdx, strTemp);
@@ -837,11 +837,11 @@
 		if(nIdx != -1)
 		{
 			strTemp = strTemp.Mid(nIdx + 1);
-			strSearchPath.Format(_T("\\\\%s\\C\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
+			strSearchPath.Format(_T("\\\\%s\\D\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
 		}
 		else
 		{
-			strSearchPath.Format(_T("\\\\%s\\C\\DIT_Review\\Recipe\\*.rcp"), NETIP_A2E_REVIEW_SYSTEM);
+			strSearchPath.Format(_T("\\\\%s\\D\\DIT_Review\\Recipe\\*.rcp"), NETIP_A2E_REVIEW_SYSTEM); //210805
 		}
 	}
 
@@ -902,12 +902,12 @@
 		if(nIdx != -1)
 		{
 			strTemp = strTemp.Mid(nIdx + 1);
-			strPath.Format(_T("\\\\%s\\C\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
+			strPath.Format(_T("\\\\%s\\D\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
 		}
 		else
 		{
-			strPath.Format(_T("\\\\%s\\C\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strRecipeName);
-		}
+			strPath.Format(_T("\\\\%s\\D\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strRecipeName);//210805
+		} 
 	}
 
 	CMacroFile macroFile;
@@ -995,11 +995,11 @@
 		if(nIdx != -1)
 		{
 			strTemp = strTemp.Mid(nIdx + 1);
-			strPath.Format(_T("\\\\%s\\C\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
+			strPath.Format(_T("\\\\%s\\D\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
 		}
 		else
 		{
-			strPath.Format(_T("\\\\%s\\C\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strRecipeName);
+			strPath.Format(_T("\\\\%s\\D\\DIT_Review\\Recipe\\%s.rcp"), NETIP_A2E_REVIEW_SYSTEM, strRecipeName); //210805
 		}
 	}
 	
@@ -1069,11 +1069,11 @@
 		if(nIdx != -1)
 		{
 			strTemp = strTemp.Mid(nIdx + 1);
-			strPath.Format(_T("\\\\%s\\C\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
+			strPath.Format(_T("\\\\%s\\D\\%s"), NETIP_A2E_REVIEW_SYSTEM, strTemp);
 		}
 		else
 		{
-			strPath.Format(_T("\\\\%s\\C\\DIT_Review\\ReviewServerConfig\\SystemSetting.cfg"), NETIP_A2E_REVIEW_SYSTEM);
+			strPath.Format(_T("\\\\%s\\D\\DIT_Review\\ReviewServerConfig\\SystemSetting.cfg"), NETIP_A2E_REVIEW_SYSTEM); //210805
 		}
 	}
 
@@ -1106,12 +1106,12 @@
 
 void CReviewRecipeEditorDlg::OnTcnSelchangeTabReviewRcpEditorMainTab(NMHDR *pNMHDR, LRESULT *pResult)
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
 	RecipeMainTab nTabIdx;
 
 	nTabIdx = (RecipeMainTab)m_ctrlTabMain.GetCurSel();
 
-	// [2017:1:25]-[WEZASW] : SystemMachine_B7E_WSI 설비 분리(WSI 유/무)
+	// [2017:1:25]-[WEZASW] : SystemMachine_B7E_WSI 占쏙옙占쏙옙 占싻몌옙(WSI 占쏙옙/占쏙옙)
 	switch(GetCurrentTapIndex(nTabIdx))
 	{
 	case COMMON_TAB:
@@ -1217,8 +1217,8 @@
 }
 void CReviewRecipeEditorDlg::OnCancel()
 {
-	// TODO: 여기에 특수화된 코드를 추가 및/또는 기본 클래스를 호출합니다.
-	//_T("레시피 에디터 프로그램을 종료하시겠습니까?"), MB_YESNO | MB_ICONQUESTION))
+	// TODO: 占쏙옙占썩에 특占쏙옙화占쏙옙 占쌘드를 占쌩곤옙 占쏙옙/占실댐옙 占썩본 클占쏙옙占쏙옙占쏙옙 호占쏙옙占쌌니댐옙.
+	//_T("占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 占쏙옙占싸그뤄옙占쏙옙 占쏙옙占쏙옙占싹시겠쏙옙占싹깍옙?"), MB_YESNO | MB_ICONQUESTION))
 	if (IDNO == AfxMessageBox(_T("Do you want to exit recipe editor program?"), MB_YESNO | MB_ICONERROR))
 	{
 		return;
@@ -1344,7 +1344,7 @@
 
 void CReviewRecipeEditorDlg::OnStnClickedStaticSelectRcipe()
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
 }
 
 
@@ -1447,7 +1447,7 @@
 	}
 	else
 	{
-		AfxMessageBox(_T("Please select recipe."));//_T("레시피를 선택하세요."));
+		AfxMessageBox(_T("Please select recipe."));//_T("占쏙옙占쏙옙占실몌옙 占쏙옙占쏙옙占싹쇽옙占쏙옙."));
 	}
 
 	return bSuccess;
@@ -1457,7 +1457,7 @@
 {
 	BOOL bSuccess = TRUE;
 
-	// 중복 Recipe 생성 금지.
+	// 占쌩븝옙 Recipe 占쏙옙占쏙옙 占쏙옙占쏙옙.
 	CFileFind finder;
 	CString strRecipeFile;
 	strRecipeFile.Format(_T("%s\\%s.rcp"), _REVIEW_RECIPE_PATH_, strRecipeName);
diff --git a/ReviewSystem/ReviewRecipeEditor/stdafx.h b/ReviewSystem/ReviewRecipeEditor/stdafx.h
index fa2019c..a2201e9 100644
--- a/ReviewSystem/ReviewRecipeEditor/stdafx.h
+++ b/ReviewSystem/ReviewRecipeEditor/stdafx.h
@@ -1,7 +1,7 @@
 
-// stdafx.h : 자주 사용하지만 자주 변경되지는 않는
-// 표준 시스템 포함 파일 및 프로젝트 관련 포함 파일이 
-// 들어 있는 포함 파일입니다.
+// stdafx.h : 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙占� 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙占� 占십댐옙
+// 표占쏙옙 占시쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙 占쏙옙占쏙옙占쏙옙트 占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 
+// 占쏙옙占� 占쌍댐옙 占쏙옙占쏙옙 占쏙옙占쏙옙占쌉니댐옙.
 
 #pragma once
 
@@ -10,37 +10,42 @@
 #endif
 
 #ifndef VC_EXTRALEAN
-#define VC_EXTRALEAN            // 거의 사용되지 않는 내용은 Windows 헤더에서 제외합니다.
+#define VC_EXTRALEAN            // 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 占십댐옙 占쏙옙占쏙옙占쏙옙 Windows 占쏙옙占쏙옙占쏙옙占� 占쏙옙占쏙옙占쌌니댐옙.
 #endif
 
 #include "targetver.h"
 
-#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS      // 일부 CString 생성자는 명시적으로 선언됩니다.
+#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS      // 占싹븝옙 CString 占쏙옙占쏙옙占쌘댐옙 占쏙옙占쏙옙占쏙옙占쏙옙占� 占쏙옙占쏙옙絳求占�.
 
-// MFC의 공통 부분과 무시 가능한 경고 메시지에 대한 숨기기를 해제합니다.
+// MFC占쏙옙 占쏙옙占쏙옙 占싸분곤옙 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 占쏙옙占� 占쌨쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙綬� 占쏙옙占쏙옙占쌌니댐옙.
 #define _AFX_ALL_WARNINGS
 
-#include <afxwin.h>         // MFC 핵심 및 표준 구성 요소입니다.
-#include <afxext.h>         // MFC 확장입니다.
+#include <afxwin.h>         // MFC 占쌕쏙옙 占쏙옙 표占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙都求占�.
+#include <afxext.h>         // MFC 확占쏙옙占쌉니댐옙.
 
-#include <afxdisp.h>        // MFC 자동화 클래스입니다.
+#include <afxdisp.h>        // MFC 占쌘듸옙화 클占쏙옙占쏙옙占쌉니댐옙.
 
 #ifndef _AFX_NO_OLE_SUPPORT
-#include <afxdtctl.h>           // Internet Explorer 4 공용 컨트롤에 대한 MFC 지원입니다.
+#include <afxdtctl.h>           // Internet Explorer 4 占쏙옙占쏙옙 占쏙옙트占싼울옙 占쏙옙占쏙옙 MFC 占쏙옙占쏙옙占쌉니댐옙.
 #endif
 #ifndef _AFX_NO_AFXCMN_SUPPORT
-#include <afxcmn.h>             // Windows 공용 컨트롤에 대한 MFC 지원입니다.
+#include <afxcmn.h>             // Windows 占쏙옙占쏙옙 占쏙옙트占싼울옙 占쏙옙占쏙옙 MFC 占쏙옙占쏙옙占쌉니댐옙.
 #endif // _AFX_NO_AFXCMN_SUPPORT
 
-#include <afxcontrolbars.h>     // MFC의 리본 및 컨트롤 막대 지원
+#include <afxcontrolbars.h>     // MFC占쏙옙 占쏙옙占쏙옙 占쏙옙 占쏙옙트占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙
 #include <afxinet.h>
 #include <afxcontrolbars.h>
 
-#define _REVIEW_BASE_PATH_							_T("C:\\DIT_Review")
-#define _REVIEW_RECIPE_PATH_						_T("C:\\DIT_Review\\Recipe")
-#define _REVIEW_RECIPE_BACKUP_PATH_					_T("C:\\DIT_Review\\Recipe\\Backup")
-#define _REVIEW_RECIPE_LOGIN_LOG_PATH_				_T("C:\\DIT_Review\\Recipe\\LoginLog")
-#define _REVIEW_SERVER_SYSTEM_SETTING_FILE_PATH_	_T("C:\\DIT_Review\\ReviewServerConfig\\SystemSetting.cfg")
+//#define _REVIEW_BASE_PATH_							_T("C:\\DIT_Review")
+//#define _REVIEW_RECIPE_PATH_						_T("C:\\DIT_Review\\Recipe")
+//#define _REVIEW_RECIPE_BACKUP_PATH_					_T("C:\\DIT_Review\\Recipe\\Backup")
+//#define _REVIEW_RECIPE_LOGIN_LOG_PATH_				_T("C:\\DIT_Review\\Recipe\\LoginLog")
+//#define _REVIEW_SERVER_SYSTEM_SETTING_FILE_PATH_	_T("C:\\DIT_Review\\ReviewServerConfig\\SystemSetting.cfg")
+#define _REVIEW_BASE_PATH_							_T("D:\\DIT_Review")  //210805
+#define _REVIEW_RECIPE_PATH_						_T("D:\\DIT_Review\\Recipe")
+#define _REVIEW_RECIPE_BACKUP_PATH_					_T("D:\\DIT_Review\\Recipe\\Backup")
+#define _REVIEW_RECIPE_LOGIN_LOG_PATH_				_T("D:\\DIT_Review\\Recipe\\LoginLog")
+#define _REVIEW_SERVER_SYSTEM_SETTING_FILE_PATH_	_T("D:\\DIT_Review\\ReviewServerConfig\\SystemSetting.cfg")
 #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")
 
@@ -72,19 +77,19 @@
 
 #define	COPYDATA_RECIPEEDITOR2REVIEWSYSTEM			1600
 
-// [2017:4:17]-[WEZASW] : CIM(Recipe) 보고 항목 추가.
+// [2017:4:17]-[WEZASW] : CIM(Recipe) 占쏙옙占쏙옙 占쌓몌옙 占쌩곤옙.
 enum MsgRecipe2Rev
 {
 	MsgRecipe2Rev_None = -1,
 	MsgRecipe2Rev_StandardCameraGlassPos,
 	MsgRev2Recipe_StandardCameraGlassPos,
-	MsgRecipe2Rev_RecipeCreate,					// Recipe(PPID) 추가
+	MsgRecipe2Rev_RecipeCreate,					// Recipe(PPID) 占쌩곤옙
 	MsgRev2Recipe_RecipeCreate,
-	MsgRecipe2Rev_RecipeChange,					// Recipe(PPID) 변경
+	MsgRecipe2Rev_RecipeChange,					// Recipe(PPID) 占쏙옙占쏙옙
 	MsgRev2Recipe_RecipeChange,
-	MsgRecipe2Rev_RecipeDelete,					// Recipe(PPID) 삭제
+	MsgRecipe2Rev_RecipeDelete,					// Recipe(PPID) 占쏙옙占쏙옙
 	MsgRev2Recipe_RecipeDelete,
-	MsgRecipe2Rev_RecipeModify,					// Recipe(PPID) Parameter 수정
+	MsgRecipe2Rev_RecipeModify,					// Recipe(PPID) Parameter 占쏙옙占쏙옙
 	MsgRev2Recipe_RecipeModify
 };
 
diff --git a/ReviewSystem/ReviewSystem/CameraControlAlign.cpp b/ReviewSystem/ReviewSystem/CameraControlAlign.cpp
index 735e3f1..aafd737 100644
--- a/ReviewSystem/ReviewSystem/CameraControlAlign.cpp
+++ b/ReviewSystem/ReviewSystem/CameraControlAlign.cpp
@@ -5,7 +5,8 @@
 #include "CHReviewSetting/SystemInfo.h"
 #include "CHReviewRecipe/RsRcpAlignInfo.h"
 
-#define ALIGN_TEMPLATE_PATH _T("C:\\DIT_Review\\Recipe\\AlignImage\\")
+#define ALIGN_TEMPLATE_PATH _T("D:\\DIT_Review\\Recipe\\AlignImage\\")
+//#define ALIGN_TEMPLATE_PATH _T("C:\\DIT_Review\\Recipe\\AlignImage\\") //210805
 
 using namespace CHImageControls;
 
diff --git a/ReviewSystem/ReviewSystem/CameraControlReview.cpp b/ReviewSystem/ReviewSystem/CameraControlReview.cpp
index f4e3f79..693c429 100644
--- a/ReviewSystem/ReviewSystem/CameraControlReview.cpp
+++ b/ReviewSystem/ReviewSystem/CameraControlReview.cpp
@@ -207,11 +207,13 @@
 	CString strPath =m_pRCC2P->IRCC2P_GetTotalPitchImageName();
 
 	if(strPath == _T("")){
-		strPath = _T("C:\\DIT_Review\\Recipe\\AlignImage\\ReviewAlign.bmp");
+		strPath = _T("D:\\DIT_Review\\Recipe\\AlignImage\\ReviewAlign.bmp");
+		//strPath = _T("C:\\DIT_Review\\Recipe\\AlignImage\\ReviewAlign.bmp");  //210805
 	}
 	else
 	{
-		strPath = _T("C:\\DIT_Review\\Recipe\\AlignImage\\")+strPath;
+		strPath = _T("D:\\DIT_Review\\Recipe\\AlignImage\\") + strPath; 
+		//strPath = _T("C:\\DIT_Review\\Recipe\\AlignImage\\")+strPath; //210805
 
 	}
 	
diff --git a/ReviewSystem/ReviewSystem/DlgReviewOffSetTool.h b/ReviewSystem/ReviewSystem/DlgReviewOffSetTool.h
index 303adea..e90011f 100644
--- a/ReviewSystem/ReviewSystem/DlgReviewOffSetTool.h
+++ b/ReviewSystem/ReviewSystem/DlgReviewOffSetTool.h
@@ -21,11 +21,11 @@
 //enum MotorOringTYPE {
 //	LEFT_Top = 0, RIGHT_TOP,LEFT_BOTTOM, RIGHT_BOTTOM
 //};
-#define	REVIEW_OFFSET_CONFIGFILE_PATH _T("C:\\DIT_Review\\ReviewServerConfig\\")
+#define	REVIEW_OFFSET_CONFIGFILE_PATH _T("D:\\DIT_Review\\ReviewServerConfig\\") //210805
 #define	REVIEW_OFFSET_CONFIGFILE_NAME _T("ReviewOffSet.cfg")
-#define REVIEW_OFFSET_CONFIGFILE_FULL_PATHNAME _T("C:\\DIT_Review\\ReviewServerConfig\\ReviewOffSet.cfg")
+#define REVIEW_OFFSET_CONFIGFILE_FULL_PATHNAME _T("D:\\DIT_Review\\ReviewServerConfig\\ReviewOffSet.cfg")
 #define	REVIEW_OFFSET_BACKUP_FORDER_NAME _T("OffsetBackup")
-#define	REVIEW_OFFSET_BACKUP_FORDER_PATH _T("C:\\DIT_Review\\ReviewServerConfig\\OffsetBackup\\")
+#define	REVIEW_OFFSET_BACKUP_FORDER_PATH _T("D:\\DIT_Review\\ReviewServerConfig\\OffsetBackup\\")
 
 // CDlgDefocusList ���솕 �긽�옄�엯�땲�떎.
 interface IDialogReviewOffSet2Parent
diff --git a/ReviewSystem/ReviewSystem/FileUploadControl.cpp b/ReviewSystem/ReviewSystem/FileUploadControl.cpp
index 9456fac..3dd3b20 100644
--- a/ReviewSystem/ReviewSystem/FileUploadControl.cpp
+++ b/ReviewSystem/ReviewSystem/FileUploadControl.cpp
@@ -179,7 +179,7 @@
 // 
 // 	CCommendParam *pParam = NULL;
 // 
-// 	//FTPUpLoad이면 반환
+// 	//FTPUpLoad占싱몌옙 占쏙옙환
 // 	if( bFTPUpload )
 // 		return FALSE;
 // 
@@ -301,7 +301,8 @@
 	if (NULL == hWnd)
 	{
 		g_pLog->DisplayMessage(_T("Find FTPUploader Program : Fail."));
-		StartFTPUploader(_T("C:\\DIT_Review"));
+
+		StartFTPUploader(_T("D:\\DIT_Review"));  //210805
 	}
 	else
 	{
@@ -314,7 +315,7 @@
 		else
 		{
 			g_pLog->DisplayMessage(_T("Send Data to FTPUploader : Fail."));
-			RestartFTPUploader(_T("C:\\DIT_Review")); //A2E FTPUploader
+			RestartFTPUploader(_T("D:\\DIT_Review")); //A2E FTPUploader //210805
 			bRet = FALSE;
 		}
 	}
diff --git a/ReviewSystem/ReviewSystem/MainFrm.cpp b/ReviewSystem/ReviewSystem/MainFrm.cpp
index 5687f0b..dd075de 100644
--- a/ReviewSystem/ReviewSystem/MainFrm.cpp
+++ b/ReviewSystem/ReviewSystem/MainFrm.cpp
@@ -451,9 +451,9 @@
 #define strScript "RESTART^AFControl.exe^C:\\AFControl\\program\\AFControl.exe"
 	
 	CFile file;
-	if( FALSE == file.Open(_T("C:\\DIT_Review\\MakeScript.TSF"),CFile::modeCreate | CFile::modeWrite) )
+	if( FALSE == file.Open(_T("D:\\DIT_Review\\MakeScript.TSF"),CFile::modeCreate | CFile::modeWrite) ) //210805
 	{
-		g_pLog->DisplayMessage(_T("File[C:\\DIT_Review\\MakeScript.TSF] Create Fail!!"));
+		g_pLog->DisplayMessage(_T("File[D:\\DIT_Review\\MakeScript.TSF] Create Fail!!")); //210805
 		return;
 	}
 
@@ -485,7 +485,7 @@
 	CString strTarget;
 	strTarget.Format(_T("\\\\126.100.100.220\\c\\RemoteTaskMgr\\T\\CopyScript.TSF"));
 	
-	BOOL bRet = CopyFile(_T("C:\\DIT_Review\\MakeScript.TSF"),strTarget,FALSE);
+	BOOL bRet = CopyFile(_T("D:\\DIT_Review\\MakeScript.TSF"),strTarget,FALSE); //210805
 	if(bRet == FALSE)
 		g_pLog->DisplayMessage(_T("[%s]Send Script Fail!"), strTarget);
 	/////////////////////////////////////
diff --git a/ReviewSystem/ReviewSystem/stdafx.h b/ReviewSystem/ReviewSystem/stdafx.h
index d482171..68b06cc 100644
--- a/ReviewSystem/ReviewSystem/stdafx.h
+++ b/ReviewSystem/ReviewSystem/stdafx.h
@@ -77,20 +77,34 @@
 #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
 #define TOTAL_WINDOW_SIZE_Y		1040
diff --git a/ReviewSystem/ReviewSystemSetting/ReviewSystemSettingDlg.cpp b/ReviewSystem/ReviewSystemSetting/ReviewSystemSettingDlg.cpp
index 767d0f5..5442754 100644
--- a/ReviewSystem/ReviewSystemSetting/ReviewSystemSettingDlg.cpp
+++ b/ReviewSystem/ReviewSystemSetting/ReviewSystemSettingDlg.cpp
@@ -1,5 +1,5 @@
 
-// ReviewSystemSettingDlg.cpp : 구현 파일
+// ReviewSystemSettingDlg.cpp : 占쏙옙占쏙옙 占쏙옙占쏙옙
 //
 
 #include "stdafx.h"
@@ -31,20 +31,20 @@
 #endif
 
 
-// 응용 프로그램 정보에 사용되는 CAboutDlg 대화 상자입니다.
+// 占쏙옙占쏙옙 占쏙옙占싸그뤄옙 占쏙옙占쏙옙占쏙옙 占쏙옙占실댐옙 CAboutDlg 占쏙옙화 占쏙옙占쏙옙占쌉니댐옙.
 
 class CAboutDlg : public CDialog
 {
 public:
 	CAboutDlg();
 
-// 대화 상자 데이터입니다.
+// 占쏙옙화 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쌉니댐옙.
 	enum { IDD = IDD_ABOUTBOX };
 
 	protected:
-	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 지원입니다.
+	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 占쏙옙占쏙옙占쌉니댐옙.
 
-// 구현입니다.
+// 占쏙옙占쏙옙占쌉니댐옙.
 protected:
 	DECLARE_MESSAGE_MAP()
 };
@@ -62,7 +62,7 @@
 END_MESSAGE_MAP()
 
 
-// CReviewSystemSettingDlg 대화 상자
+// CReviewSystemSettingDlg 占쏙옙화 占쏙옙占쏙옙
 
 
 
@@ -87,7 +87,8 @@
 	m_pNetworkManager = NULL;
 
 	// init Log 
-	new CDisplayMessage(_T("C:\\DIT_Review\\ReviewServerConfig\\Log"));
+	//new CDisplayMessage(_T("C:\\DIT_Review\\ReviewServerConfig\\Log"));
+	new CDisplayMessage(_T("D:\\DIT_Review\\ReviewServerConfig\\Log"));//210805
 }
 
 CReviewSystemSettingDlg::~CReviewSystemSettingDlg()
@@ -185,15 +186,15 @@
 END_MESSAGE_MAP()
 
 
-// CReviewSystemSettingDlg 메시지 처리기
+// CReviewSystemSettingDlg 占쌨쏙옙占쏙옙 처占쏙옙占쏙옙
 
 BOOL CReviewSystemSettingDlg::OnInitDialog()
 {
 	CDialog::OnInitDialog();
 
-	// 시스템 메뉴에 "정보..." 메뉴 항목을 추가합니다.
+	// 占시쏙옙占쏙옙 占쌨댐옙占쏙옙 "占쏙옙占쏙옙..." 占쌨댐옙 占쌓몌옙占쏙옙 占쌩곤옙占쌌니댐옙.
 
-	// IDM_ABOUTBOX는 시스템 명령 범위에 있어야 합니다.
+	// IDM_ABOUTBOX占쏙옙 占시쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙占쏙옙 占쌍억옙占� 占쌌니댐옙.
 	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
 	ASSERT(IDM_ABOUTBOX < 0xF000);
 
@@ -211,12 +212,12 @@
 		}
 	}
 
-	// 이 대화 상자의 아이콘을 설정합니다. 응용 프로그램의 주 창이 대화 상자가 아닐 경우에는
-	//  프레임워크가 이 작업을 자동으로 수행합니다.
-	SetIcon(m_hIcon, TRUE);			// 큰 아이콘을 설정합니다.
-	SetIcon(m_hIcon, FALSE);		// 작은 아이콘을 설정합니다.
+	// 占쏙옙 占쏙옙화 占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙. 占쏙옙占쏙옙 占쏙옙占싸그뤄옙占쏙옙 占쏙옙 창占쏙옙 占쏙옙화 占쏙옙占쌘곤옙 占싣댐옙 占쏙옙荑∽옙占�
+	//  占쏙옙占쏙옙占쌈울옙크占쏙옙 占쏙옙 占쌜억옙占쏙옙 占쌘듸옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙.
+	SetIcon(m_hIcon, TRUE);			// 큰 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙.
+	SetIcon(m_hIcon, FALSE);		// 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙.
 
-	// TODO: 여기에 추가 초기화 작업을 추가합니다.
+	// TODO: 占쏙옙占썩에 占쌩곤옙 占십깍옙화 占쌜억옙占쏙옙 占쌩곤옙占쌌니댐옙.
 	CreateReviewDirectory();
 	CreateManager();
 	ReadReviewSystemConfigFile();
@@ -225,7 +226,7 @@
 
 	g_pLog->DisplayMessage(_T("SystemSetting is Started!"));
 
-	return TRUE;  // 포커스를 컨트롤에 설정하지 않으면 TRUE를 반환합니다.
+	return TRUE;  // 占쏙옙커占쏙옙占쏙옙 占쏙옙트占싼울옙 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 TRUE占쏙옙 占쏙옙환占쌌니댐옙.
 }
 
 void CReviewSystemSettingDlg::OnSysCommand(UINT nID, LPARAM lParam)
@@ -241,19 +242,19 @@
 	}
 }
 
-// 대화 상자에 최소화 단추를 추가할 경우 아이콘을 그리려면
-//  아래 코드가 필요합니다. 문서/뷰 모델을 사용하는 MFC 응용 프로그램의 경우에는
-//  프레임워크에서 이 작업을 자동으로 수행합니다.
+// 占쏙옙화 占쏙옙占쌘울옙 占쌍쇽옙화 占쏙옙占쌩몌옙 占쌩곤옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙占쏙옙占쏙옙 占쌓몌옙占쏙옙占쏙옙
+//  占싣뤄옙 占쌘드가 占십울옙占쌌니댐옙. 占쏙옙占쏙옙/占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙求占� MFC 占쏙옙占쏙옙 占쏙옙占싸그뤄옙占쏙옙 占쏙옙荑∽옙占�
+//  占쏙옙占쏙옙占쌈울옙크占쏙옙占쏙옙 占쏙옙 占쌜억옙占쏙옙 占쌘듸옙占쏙옙占쏙옙 占쏙옙占쏙옙占쌌니댐옙.
 
 void CReviewSystemSettingDlg::OnPaint()
 {
 	if (IsIconic())
 	{
-		CPaintDC dc(this); // 그리기를 위한 디바이스 컨텍스트
+		CPaintDC dc(this); // 占쌓몌옙占썩를 占쏙옙占쏙옙 占쏙옙占쏙옙決占� 占쏙옙占쌔쏙옙트
 
 		SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
 
-		// 클라이언트 사각형에서 아이콘을 가운데에 맞춥니다.
+		// 클占쏙옙占싱억옙트 占썹각占쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙 占쏙옙占쏘데占쏙옙 占쏙옙占쏙옙求占�.
 		int cxIcon = GetSystemMetrics(SM_CXICON);
 		int cyIcon = GetSystemMetrics(SM_CYICON);
 		CRect rect;
@@ -261,7 +262,7 @@
 		int x = (rect.Width() - cxIcon + 1) / 2;
 		int y = (rect.Height() - cyIcon + 1) / 2;
 
-		// 아이콘을 그립니다.
+		// 占쏙옙占쏙옙占쏙옙占쏙옙 占쌓몌옙占싹댐옙.
 		dc.DrawIcon(x, y, m_hIcon);
 	}
 	else
@@ -270,8 +271,8 @@
 	}
 }
 
-// 사용자가 최소화된 창을 끄는 동안에 커서가 표시되도록 시스템에서
-//  이 함수를 호출합니다.
+// 占쏙옙占쏙옙微占� 占쌍쇽옙화占쏙옙 창占쏙옙 占쏙옙占� 占쏙옙占싫울옙 커占쏙옙占쏙옙 표占시되듸옙占쏙옙 占시쏙옙占쌜울옙占쏙옙
+//  占쏙옙 占쌉쇽옙占쏙옙 호占쏙옙占쌌니댐옙.
 HCURSOR CReviewSystemSettingDlg::OnQueryDragIcon()
 {
 	return static_cast<HCURSOR>(m_hIcon);
@@ -280,7 +281,7 @@
 
 void CReviewSystemSettingDlg::OnTcnSelchangeTabSysSettingMainTab(NMHDR *pNMHDR, LRESULT *pResult)
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
 	SystemMainTab nTabIdx;
 
 	nTabIdx = (SystemMainTab)m_ctrlTabMain.GetCurSel();
@@ -397,12 +398,12 @@
 void CReviewSystemSettingDlg::InitTabControl()
 {
 	int nIdx = 0;
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Equipment Setting"));//_T("장비 설정"));
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Glass Type Setting"));//_T("글라스 타입 설정"));
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Align Setting"));//_T("얼라인 설정"));
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Signal Setting"));//_T("Signal 설정"));
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Motor Setting"));//_T("모터 설정"));
-	m_ctrlTabMain.InsertItem(nIdx++, _T("Network Setting"));//_T("네트워크 설정"));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Equipment Setting"));//_T("占쏙옙占� 占쏙옙占쏙옙"));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Glass Type Setting"));//_T("占쌜띰옙 타占쏙옙 占쏙옙占쏙옙"));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Align Setting"));//_T("占쏙옙占쏙옙占� 占쏙옙占쏙옙"));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Signal Setting"));//_T("Signal 占쏙옙占쏙옙"));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Motor Setting"));//_T("占쏙옙占쏙옙 占쏙옙占쏙옙"));
+	m_ctrlTabMain.InsertItem(nIdx++, _T("Network Setting"));//_T("占쏙옙트占쏙옙크 占쏙옙占쏙옙"));
 }
 
 BOOL CReviewSystemSettingDlg::ReadReviewSystemConfigFile()
@@ -526,7 +527,7 @@
 		strBackupFile = strBackupPath + strBackupFile;
 		CopyFile(_REVIEW_SERVER_SYSTEM_SETTING_FILE_PATH_, strBackupFile, TRUE);
 
-		//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD START
+		//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD START
 		strBackupPath = _REVIEW_SERVER_SYSTEM_SETTING_BACKUP_PATH_CPJT;
 		CreateDirectory(strBackupPath, NULL);
 
@@ -535,9 +536,9 @@
 		strBackupFile.Format(_T("%s\\SystemSetting.cfg"), strBackupPath);
 
 		CopyFile(_REVIEW_SERVER_SYSTEM_SETTING_FILE_PATH_, strBackupFile, FALSE);
-		//LYW_#3344_CF AOI Review Config File 백업 기능 개선 ADD END
+		//LYW_#3344_CF AOI Review Config File 占쏙옙占� 占쏙옙占� 占쏙옙占쏙옙 ADD END
 
-		if (IDNO == AfxMessageBox(_T("Save complete. Do you want to close System Setting program?"), MB_YESNO | MB_ICONQUESTION))//_T("저장 완료되었습니다. 시스템 설정 프로그램을 종료하시겠습니까?"), MB_YESNO | MB_ICONQUESTION))
+		if (IDNO == AfxMessageBox(_T("Save complete. Do you want to close System Setting program?"), MB_YESNO | MB_ICONQUESTION))//_T("占쏙옙占쏙옙 占싹뤄옙퓸占쏙옙占쏙옙求占�. 占시쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占싸그뤄옙占쏙옙 占쏙옙占쏙옙占싹시겠쏙옙占싹깍옙?"), MB_YESNO | MB_ICONQUESTION))
 		{
 			return;
 		}
@@ -549,14 +550,14 @@
 	}
 	else
 	{
-		AfxMessageBox(_T("Save Fail!"));//_T("저장 실패하였습니다."));
+		AfxMessageBox(_T("Save Fail!"));//_T("占쏙옙占쏙옙 占쏙옙占쏙옙占싹울옙占쏙옙占싹댐옙."));
 	}
 }
 
 void CReviewSystemSettingDlg::OnBnClickedCancel()
 {
-	// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
-	if (IDNO == AfxMessageBox(_T("Do you want to close System Setting program?"), MB_YESNO | MB_ICONQUESTION))//_T("시스템 설정 프로그램을 종료하시겠습니까?"), MB_YESNO | MB_ICONQUESTION))
+	// TODO: 占쏙옙占썩에 占쏙옙트占쏙옙 占싯몌옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙占쌌니댐옙.
+	if (IDNO == AfxMessageBox(_T("Do you want to close System Setting program?"), MB_YESNO | MB_ICONQUESTION))//_T("占시쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占싸그뤄옙占쏙옙 占쏙옙占쏙옙占싹시겠쏙옙占싹깍옙?"), MB_YESNO | MB_ICONQUESTION))
 	{
 		return;
 	}
@@ -568,7 +569,7 @@
 
 BOOL CReviewSystemSettingDlg::OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct)
 {
-	// TODO: 여기에 메시지 처리기 코드를 추가 및/또는 기본값을 호출합니다.
+	// TODO: 占쏙옙占썩에 占쌨쏙옙占쏙옙 처占쏙옙占쏙옙 占쌘드를 占쌩곤옙 占쏙옙/占실댐옙 占썩본占쏙옙占쏙옙 호占쏙옙占쌌니댐옙.
 	if (pCopyDataStruct->dwData == COPYDATA_SYSTEMSETTING2REVIEWSYSTEM)
 	{
 		COPYDATA_SYSTEM2REV* pCopyData = (COPYDATA_SYSTEM2REV*)pCopyDataStruct->lpData;
diff --git a/ReviewSystem/ReviewSystemSetting/stdafx.h b/ReviewSystem/ReviewSystemSetting/stdafx.h
index a5d7fd3..7b66ec9 100644
--- a/ReviewSystem/ReviewSystemSetting/stdafx.h
+++ b/ReviewSystem/ReviewSystemSetting/stdafx.h
@@ -1,7 +1,7 @@
 
-// stdafx.h : 자주 사용하지만 자주 변경되지는 않는
-// 표준 시스템 포함 파일 및 프로젝트 관련 포함 파일이 
-// 들어 있는 포함 파일입니다.
+// stdafx.h : 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙占� 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙占쏙옙占� 占십댐옙
+// 표占쏙옙 占시쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙 占쏙옙占쏙옙占쏙옙트 占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 
+// 占쏙옙占� 占쌍댐옙 占쏙옙占쏙옙 占쏙옙占쏙옙占쌉니댐옙.
 
 #pragma once
 
@@ -10,37 +10,42 @@
 #endif
 
 #ifndef VC_EXTRALEAN
-#define VC_EXTRALEAN            // 거의 사용되지 않는 내용은 Windows 헤더에서 제외합니다.
+#define VC_EXTRALEAN            // 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 占십댐옙 占쏙옙占쏙옙占쏙옙 Windows 占쏙옙占쏙옙占쏙옙占� 占쏙옙占쏙옙占쌌니댐옙.
 #endif
 
 #include "targetver.h"
 
-#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS      // 일부 CString 생성자는 명시적으로 선언됩니다.
+#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS      // 占싹븝옙 CString 占쏙옙占쏙옙占쌘댐옙 占쏙옙占쏙옙占쏙옙占쏙옙占� 占쏙옙占쏙옙絳求占�.
 
-// MFC의 공통 부분과 무시 가능한 경고 메시지에 대한 숨기기를 해제합니다.
+// MFC占쏙옙 占쏙옙占쏙옙 占싸분곤옙 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙 占쏙옙占� 占쌨쏙옙占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙綬� 占쏙옙占쏙옙占쌌니댐옙.
 #define _AFX_ALL_WARNINGS
 
-#include <afxwin.h>         // MFC 핵심 및 표준 구성 요소입니다.
-#include <afxext.h>         // MFC 확장입니다.
+#include <afxwin.h>         // MFC 占쌕쏙옙 占쏙옙 표占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙都求占�.
+#include <afxext.h>         // MFC 확占쏙옙占쌉니댐옙.
 
 
-#include <afxdisp.h>        // MFC 자동화 클래스입니다.
+#include <afxdisp.h>        // MFC 占쌘듸옙화 클占쏙옙占쏙옙占쌉니댐옙.
 
 
 
 #ifndef _AFX_NO_OLE_SUPPORT
-#include <afxdtctl.h>           // Internet Explorer 4 공용 컨트롤에 대한 MFC 지원입니다.
+#include <afxdtctl.h>           // Internet Explorer 4 占쏙옙占쏙옙 占쏙옙트占싼울옙 占쏙옙占쏙옙 MFC 占쏙옙占쏙옙占쌉니댐옙.
 #endif
 #ifndef _AFX_NO_AFXCMN_SUPPORT
-#include <afxcmn.h>             // Windows 공용 컨트롤에 대한 MFC 지원입니다.
+#include <afxcmn.h>             // Windows 占쏙옙占쏙옙 占쏙옙트占싼울옙 占쏙옙占쏙옙 MFC 占쏙옙占쏙옙占쌉니댐옙.
 #endif // _AFX_NO_AFXCMN_SUPPORT
 
-#include <afxcontrolbars.h>     // MFC의 리본 및 컨트롤 막대 지원
+#include <afxcontrolbars.h>     // MFC占쏙옙 占쏙옙占쏙옙 占쏙옙 占쏙옙트占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙
 
-#define _REVIEW_SERVER_BASE_PATH_					_T("C:\\DIT_Review")
-#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_SYSTEM_PASSWORD_FILE_PATH_	_T("C:\\DIT_Review\\ReviewServerConfig\\SystemSetting.dat")
+#define _REVIEW_SERVER_BASE_PATH_					_T("D:\\DIT_Review")  //210805
+#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 _REVIEW_SERVER_SYSTEM_PASSWORD_FILE_PATH_	_T("D:\\DIT_Review\\ReviewServerConfig\\SystemSetting.dat")
+
+//#define _REVIEW_SERVER_BASE_PATH_					_T("C:\\DIT_Review")
+//#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_SYSTEM_PASSWORD_FILE_PATH_	_T("C:\\DIT_Review\\ReviewServerConfig\\SystemSetting.dat")
 #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_SYSTEM_TITLE_						_T("ReviewSystem")
@@ -60,7 +65,7 @@
 	MsgSystem2Rev_ChangeSysConfig,
 	MsgRev2System_ChangeSysConfig,
 
-	// [2017:5:2]-[WEZASW] : TFE Measurement 설비 UNIT Test(Signal 수동 발생)를 위한 추가
+	// [2017:5:2]-[WEZASW] : TFE Measurement 占쏙옙占쏙옙 UNIT Test(Signal 占쏙옙占쏙옙 占쌩삼옙)占쏙옙 占쏙옙占쏙옙 占쌩곤옙
 	MsgSystem2Rev_SendAlignAlarmSignal,
 	MsgRev2System_SendAlignAlarmSignal,
 
diff --git a/ReviewSystem/include/CHReviewRecipe/RsRcpAlignInfo.h b/ReviewSystem/include/CHReviewRecipe/RsRcpAlignInfo.h
index c5d590e..2b16dd8 100644
--- a/ReviewSystem/include/CHReviewRecipe/RsRcpAlignInfo.h
+++ b/ReviewSystem/include/CHReviewRecipe/RsRcpAlignInfo.h
@@ -1,7 +1,11 @@
 #pragma once
 
-#define ALIGN_IMAGE_PATH _T("C:\\DIT_Review\\Recipe\\AlignImage")
-#define REFLOW_IMAGE_PATH _T("C:\\DIT_Review\\Recipe\\Reflow")
+
+#define ALIGN_IMAGE_PATH _T("D:\\DIT_Review\\Recipe\\AlignImage")  //210805
+#define REFLOW_IMAGE_PATH _T("D:\\DIT_Review\\Recipe\\Reflow")
+
+//#define ALIGN_IMAGE_PATH _T("C:\\DIT_Review\\Recipe\\AlignImage")
+//#define REFLOW_IMAGE_PATH _T("C:\\DIT_Review\\Recipe\\Reflow")
 
 class AFX_EXT_CLASS CRsRcpAlignInfo
 {
diff --git a/ReviewSystem/include/M_AutoDiagnosisManager/DiagnosisInfo.h b/ReviewSystem/include/M_AutoDiagnosisManager/DiagnosisInfo.h
index 8de970b..3ec6aef 100644
--- a/ReviewSystem/include/M_AutoDiagnosisManager/DiagnosisInfo.h
+++ b/ReviewSystem/include/M_AutoDiagnosisManager/DiagnosisInfo.h
@@ -3,7 +3,8 @@
 #include <vector>
 
 // path define
-#define REVIEW_AUTO_DIAGNOSIS_SETTING_FILE_PATH			_T("C:\\DIT_Review\\DiagnosisConfig")
+#define REVIEW_AUTO_DIAGNOSIS_SETTING_FILE_PATH			_T("D:\\DIT_Review\\DiagnosisConfig")  //210805
+//#define REVIEW_AUTO_DIAGNOSIS_SETTING_FILE_PATH			_T("C:\\DIT_Review\\DiagnosisConfig")
 #define REVIEW_AUTO_DIAGNOSIS_SETTING_FILE_NAME			_T("AutoDiagnosisSetting.cfg")
 #define REVIEW_AUTO_DIAGNOSIS_DATA_FILE_PATH			_T("D:\\ResultData\\AutoDiagnosis")
 #define REVIEW_AUTO_DIAGNOSIS_DATA_IMAGE_FILE_PATH		_T("D:\\ResultData\\AutoDiagnosis\\ResultImage")
@@ -58,7 +59,7 @@
 	virtual void IDP2P_WsiMotorMotionEnd(int nModuleIdx, double dPosX, double dPosY) = 0;
 
 	virtual BOOL IDP2P_DiagnosisSendCompleteSig()=0;
-	virtual BOOL IDP2P_DiagnosisSendJudgeAlarm() = 0; //0412 AU°¡Aø´U ½AE£ Aß°¡
+	virtual BOOL IDP2P_DiagnosisSendJudgeAlarm() = 0; //0412 AU占싣�占폗占쏙옙占쏙옙U 占쏙옙AE占쏙옙 A占쏙옙占싣�占�
 
 	// Dialog
 	virtual BOOL IDP2P_SetDlgFlatness(int nIndex) = 0;
@@ -224,9 +225,9 @@
 		m_dReviewPanelPosY2 = 0;
 		m_dReviewPanelPosX4 = 0;
 		m_dReviewPanelPosY4 = 0;
-		//#3514_LYW_CF AOI Review 자가진단 기능 개선_START
+		//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_START
 		m_nFlatnessSkipMode = 0;
-		//#3514_LYW_CF AOI Review 자가진단 기능 개선_END
+		//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_END
 
 	}
 
@@ -253,12 +254,12 @@
 	void					SetPanelPosY_Wsi(double dData) {  m_dPanelPosY = dData; }
 	void					SetPanelPosX2_Wsi(double dData) { m_dPanelPosX2 = dData; }
 	void					SetPanelPosY2_Wsi(double dData) { m_dPanelPosY2 = dData; }
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_START
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_START
 	void					SetFlastnessSkipMode(double dData) { m_nFlatnessSkipMode = dData; }
 	void					SetSquarenessStandard(double dData) { m_dSquarenessStandard = dData; }
 	void					SetSquarenessStandard2(double dData) { m_dSquarenessStandard2 = dData; }
 	void					SetWSIStandard(double dData) { m_dWSIStandard = dData; }
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_END
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_END
 
 
 	// getter
@@ -290,12 +291,12 @@
 	double					GetPanelPosY_Wsi() const { return m_dPanelPosY; }
 	double					GetPanelPosX2_Wsi() const { return m_dPanelPosX2; }
 	double					GetPanelPosY2_Wsi() const { return m_dPanelPosY2; }
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_START
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_START
 	int					    GetFlastnessSkipMode() const { return m_nFlatnessSkipMode; }
 	double					GetSquarenessStandard() const { return m_dSquarenessStandard; }
 	double					GetSquarenessStandard2() const { return m_dSquarenessStandard2; }
 	double					GetWSIStandard() const { return m_dWSIStandard; }
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_END
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_END
 	//Review
 public:
 	double					GetReviewPanelPosX() const { return m_dReviewPanelPosX; }
@@ -324,10 +325,10 @@
 	int							m_nCameraFrameHeight;
 	double						m_dCameraResolution;
 	double						m_dJudgeData_Degree;
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_START
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_START
 	double						m_dSquarenessStandard;
 	double						m_dSquarenessStandard2;
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_END
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_END
 
 	// Flatness
 	CDiagnosisResult			m_dataSettingResult_Flatness;		// single data
@@ -337,17 +338,17 @@
 	int							m_nRangeCount_Flatness;
 	int							m_nGlassSizeX;
 	int							m_nGlassSizeY;
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_START
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_START
 	int							m_nFlatnessSkipMode;
-    //#3514_LYW_CF AOI Review 자가진단 기능 개선_END
+    //#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_END
 
 	// wsi
 	VectorDiagnosisResult		m_vecSettingResult_Wsi;		// add module count
 	int							m_nPanelCount_Wsi;
 	double						m_dJudgeData_3Sigma;
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_START
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_START
 	double						m_dWSIStandard;
-	//#3514_LYW_CF AOI Review 자가진단 기능 개선_END
+	//#3514_LYW_CF AOI Review 占쌘곤옙占쏙옙占쏙옙 占쏙옙占� 占쏙옙占쏙옙_END
 
 	double						m_dPanelPosX;
 	double						m_dPanelPosY;

--
Gitblit v1.9.3