SDC C-Project CF Review 프로그램
LYW
2021-10-15 e5fa774d622d6852fe8e1f033045aed221649108
ReviewHistory/ReveiwHistory/InterfaceFTP.h
»õ ÆÄÀÏ
@@ -0,0 +1,100 @@
#pragma once
#include "GlassRawBase.h"
class CInterfaceFTP
{
public:
   enum emFTPCommand
   {
      FTPCMD_REVIEW_IMAGE      =0,
      FTPCMD_RAW            ,
      FTPCMD_INDEX            ,
      FTPCMD_AOI_IMAGE         ,
      FTPCMD_MURA_RAW         ,
      FTPCMD_MURA_IMAGE         ,
      FTPCMD_STACK            ,
      FTPCMD_LINK            ,
      FTPCMD_End
   };
public:
   CInterfaceFTP(void);
   ~CInterfaceFTP(void);
   virtual void SendMessageFTPUploadRaw(_grmGlassData* pGlassData);
   virtual void SendMessageFTPDownloadStack(_grmGlassData* pGlassData);
   virtual void SendMessageFTPUploadImage(_grmGlassData* pGlassData, emFTPCommand sort);
   virtual BOOL SendMessageFTPUploadIndexFile(_grmGlassData* pGlassData);
   virtual void SendMessageFTPUploadLinkFile(_grmGlassData* pGlassData);
   virtual void SendMessageFTPDownloadDataFile( _grmGlassData* pGlassData);
   virtual void GetFormatDescription(emFTPCommand sort, char* pServerPath, char* pServerFile, char* pLocalPath, char* pLocalFile, _grmGlassData* pGlassData);
public:
   CTime m_tmFileCreateTime;
};
class CFTPCopyDataParam
{
public:
   enum FTPProcessType { FTPProcessType_DownFile=0, FTPProcessType_UpFile, FTPProcessType_Count };
   enum FTPDataSize { FTPDataSize_MaxPathNum=255, FTPDataSize_MaxFileNum=100 };
   enum FTPCopyDataCmd { FTPCopyDataCmd_RawDownload=1,  FTPCopyDataCmd_RawUpload, FTPCopyDataCmd_LotUpload, FTPCopyDataCmd_ImageUpload };
   enum FTPDataType { FTPDataType_Unknown = 0, FTPDataType_Raw, FTPDataType_Image, FTPDataType_Stack, FTPDataType_Index };
public:
   CFTPCopyDataParam()            { Reset(); }
   virtual ~CFTPCopyDataParam()   { Reset(); }
   void Reset()
   {
      memset(this, 0, sizeof(CFTPCopyDataParam));
      m_hSenderWnd = GetCurrentProcessWndHandle();
   }
   const HWND   GetSenderWnd() const                  { return m_hSenderWnd; }
   void      SetSenderWnd(HWND hWnd)                  { m_hSenderWnd = hWnd; }
public:
   int      m_nProcessType;                        // í”„로세스 íƒ€ìž…
   int    m_nCreateSignalFile;                  // ì‹œê·¸ë„ íŒŒì¼ ìƒì„±ìœ ë¬´
   int      m_bFirstPriority;                     // ìµœìƒìœ„ ìš°ì„ ìˆœìœ„유무
   int      m_nSendResultCode;                     // ë³´ë‚¸ ê²°ê³¼ ì½”드
   // [C-PRJ] Image Upload Define - KHT (2020/11/19)
   int      m_nDataType;                        // ë°ì´í„° íƒ€ìž…
   TCHAR   m_strServer_FolderName[FTPDataSize_MaxPathNum];      // ì„œë²„ ê²½ë¡œëª…
   TCHAR   m_strServer_FileName[FTPDataSize_MaxFileNum];         // ì„œë²„ íŒŒì¼ëª…
   TCHAR   m_strLocal_FolderName[FTPDataSize_MaxPathNum];      // ë¡œì»¬ ê²½ë¡œëª…
   TCHAR   m_strLocal_FileName[FTPDataSize_MaxFileNum];         // ë¡œì»¬ íŒŒì¼ëª…
   TCHAR   m_strServer_SignalFolderName[FTPDataSize_MaxPathNum];   // ì„œë²„ ì‹œê·¸ë„ ê²½ë¡œëª…
   TCHAR   m_strServer_SignalFileName[FTPDataSize_MaxFileNum];   // ì„œë²„ ì‹œê·¸ë„ íŒŒì¼ëª…
   TCHAR   m_strRTMS_FileName[FTPDataSize_MaxFileNum];
   TCHAR   m_strServer_SubFileName[FTPDataSize_MaxFileNum];  // ì„œë²„ ë¡œì»¬ ê²½ë¡œë‚´ì— ì¶”ê°€ Raw íŒŒì¼ ìƒì„± ì´ë¦„
   TCHAR   m_strServer_SubFilePath[FTPDataSize_MaxFileNum];  // ì„œë²„ ë¡œì»¬ ê²½ë¡œë‚´ì— ì¶”ê°€ Raw íŒŒì¼ ìƒì„± ê²½ë¡œ
protected:
   HWND   m_hSenderWnd;                        // ë³´ë‚¸ í”„로그램 ìœˆë„ìš°
   static HWND GetCurrentProcessWndHandle()
   {
      DWORD dwPID = GetCurrentProcessId();
      HWND hWnd = FindWindow(NULL, NULL);
      while (hWnd != NULL)
      {
         if (GetParent(hWnd) == NULL){
            DWORD dwProcId;
            GetWindowThreadProcessId(hWnd, &dwProcId);
            if (dwPID == dwProcId){
               return hWnd;
            }
         }
         hWnd = GetWindow(hWnd, GW_HWNDNEXT);
      }
      return NULL;
   }
};