From ea996431950e6ecff451bd40d1228f51d077475c Mon Sep 17 00:00:00 2001 From: LYW <leeyeanwoo@diteam.co.kr> Date: 목, 28 4월 2022 09:22:18 +0900 Subject: [PATCH] Ongoing100 #4086 CF AOI Review FDC SW Version 추가 요청 --- ReviewSystem/ReviewSystem/ReviewInterface.cpp | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 52 insertions(+), 2 deletions(-) diff --git a/ReviewSystem/ReviewSystem/ReviewInterface.cpp b/ReviewSystem/ReviewSystem/ReviewInterface.cpp index a2d3e7d..73bc99f 100644 --- a/ReviewSystem/ReviewSystem/ReviewInterface.cpp +++ b/ReviewSystem/ReviewSystem/ReviewInterface.cpp @@ -162,6 +162,8 @@ { if (m_pDoc==NULL) return FALSE; + Start3rdPartyProgram(); + CreateDirectory(_REVIEW_SERVER_BASE_PATH_, NULL); CreateDirectory(_REVIEW_SERVER_LOG_PATH_, NULL); CreateDirectory(_REVIEW_SERVER_CONFIG_PATH_, NULL); @@ -388,6 +390,8 @@ DisconnectReviewCamera(); DeinitReviewCamera(); m_ProcessTimer.End(); + + Terminate3rdPartyProgram(); if (m_pView) { @@ -491,8 +495,6 @@ DeinitSharedImage(); g_pLog->DisplayMessage(_T("Deinit Shared Image")); - - DeinitTotalPitchMeasure(); g_pLog->DisplayMessage(_T("Deinit TotalPitch Measure")); @@ -720,6 +722,54 @@ //Review S/W Version End } +/*< LYW 20220426 - #4086 ADD Start >*/ +void CReviewInterface::Start3rdPartyProgram() +{ +// if(StartWindowIDProgram(_T("FTPUploader"), _T("D:\\DIT_3rdParty\\FTPUpload\\FTPUploader.exe"))) +// g_pLog->DisplayMessage(_T("FDCFTPUploader Start Success")); +// else g_pLog->DisplayMessage(_T("FDCFTPUploader Start Fail")); + + if (StartWindowIDProgram(_T("Dit Glass Raw Messenger"), _T("D:\\DIT_3rdParty\\GlassRawMessenger\\DitGlassRawMessenger_x64.exe"))) + g_pLog->DisplayMessage(_T("DitGlassRawMessenger Start Success")); + else g_pLog->DisplayMessage(_T("DitGlassRawMessenger Start Fail")); +} + +int CReviewInterface::StartWindowIDProgram(CString WindowID, CString ProgramPath) +{ + HWND hWnd = ::FindWindow(NULL, WindowID); + if (hWnd == NULL) + { + if(ShellExecute(hWnd, NULL, ProgramPath, NULL, NULL, SW_SHOWMINIMIZED)) + return TRUE; + else return FALSE; + } + return TRUE; +} + +void CReviewInterface::Terminate3rdPartyProgram() +{ + /*TerminateWindowIDProgram(_T("FTPUploader"));*/ + TerminateWindowIDProgram(_T("Dit Glass Raw Messenger")); + TerminateWindowIDProgram(_T("gnuplot")); + KillProcess("wgnuplot.exe"); +} + +void CReviewInterface::TerminateWindowIDProgram(CString WindowID) +{ + HWND hWnd = ::FindWindow(NULL, WindowID); + if (hWnd != NULL) + { + DWORD ProcessId; + GetWindowThreadProcessId(hWnd, &ProcessId); + HANDLE hProcess = OpenProcess(MAXIMUM_ALLOWED, FALSE, ProcessId); + if (hProcess != NULL) + { + TerminateProcess(hProcess, 0); + } + + } +} +/*< LYW 20220426 - #4086 ADD End >*/ /*< LYW 20220415 - #4086 ADD End >*/ void CReviewInterface::CreateSystemDirectory() -- Gitblit v1.9.3