使用soui开发的mbc,只支持windows版本
w1146869587
2022-01-24 0408576e9da10015ffa9da0079b8c985113ce4b3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#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);
};