#pragma once #include "afx.h" #include "UpsAppPackItem.h" #include "UpdateProgressDlg.h" #include "HighTime.h" class CTaskItemData : public CObject { public: CTaskItemData(void); ~CTaskItemData(void); void operator=( CTaskItemData &item ); // Attributes public: CString m_strID; CString m_strServer; UINT m_nPort; CString m_strFileSFlag; CString m_strAppProcName; CString m_strAppFlag; CString m_strCurVer; CString m_strFileSIP; UINT m_nFileSPort; int m_nVerPrompt; CString m_strLoginName; CString m_strUserName; CString m_strUserSession; SHostWnd *m_pOwner; CUpdateWebCMgr m_UpdateWebMgr; CUpdateProgressDlg *m_pDlgOIUpsProgress; private: CString m_strkAppPackXml; bool m_bTasking; CString m_strLastErrInfo; DWORD m_dwLastErrCode; CString m_strSaveFileName; HANDLE m_hCheckAppPackVer; bool m_bIsStartDownload; CHighTime m_dtLastDownloading; // Operations public: void CleanData( ); void SetLastErrCode( DWORD dwLastErrCode){m_dwLastErrCode = dwLastErrCode;}; void SetLastErrInfo( CString strLastErrInfo ){m_strLastErrInfo = strLastErrInfo;}; void TaskEnd( ){m_bTasking = false;}; void SetDownloading( ); CHighTime GetLastDownloadingTime( ); bool IsStartDownload( ); bool IsTasking( ); long DoStartTask( ); CString GetSaveFileName( ); CString GetLastErrInfo( ); DWORD GetLastErrCode( ); long CheckAppPackVer( ); static unsigned int _stdcall CheckAppPackVerThread(LPVOID lpv); private: long StartTask( ); bool InitClientMgr( ); bool DownloadFile( CString strMFileServer, long nMFilePort, CString strMFileID, CString strFileName, CString &strFilePath ); BOOL ParseAppPackXMLItem( CString strXml,CUpsAppPackItem *pItem); };