#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; } };