使用soui开发的mbc,只支持windows版本
w1146869587
2022-01-24 4905e2e7537d507f218e8e9595485e09d9f3a2b4
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
 
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// QLSession.h : header file
//
 
#include "QLObj.h"
#include "MsgMap.h"
#include "QLResponse.h"
#include "QLCommander.h"
 
class CQLLoginInfo;
class CQLConnect;
class CQLSysMsg;
class CQLCallBackBase;
 
//#include "MsgItem.h"
 
#define        SESSION_FLAG_CONNECTONLY        ( 0X1 )     // Ö»ÄܵǼһÀàÐÍ(Èç¹ûÓиÃÑ¡ÏÔòÒª¸ù¾Ý strName ½øÐÐÅųâ)
 
/////////////////////////////////////////////////////////////////////////////
// CQLSession window
 
class AFX_EXT_CLASS CQLSession : public CQLObj
{
// Construction
public:
    CQLSession();
    virtual ~CQLSession();
 
// Attributes
public:
    UINT            m_nID;
    CString            m_strName;
 
    CString            m_strConnectType;            // ÓÃÓÚÏò·þÎñ¶Ë×¢²áÁ¬½ÓÀàÐÍ
    CString            m_strAppType;
    DWORD            m_dwFlag;
 
protected:
    CQLConnect                *m_pConnect;
    CQLCallBackBase            *m_pCallBack;
 
    CMsgMapMgr                m_mgrMsgMap;        // Msg Map; Temp
 
// Operations
public:
    void            SetCallBack( CQLCallBackBase *pCallBack );
    void            SetOIConnect( CQLConnect *pConnect );
    CQLConnect *    GetOIConnect();
    CQLLoginInfo *    GetOILoginInfo();
    UINT            GetID();
    BOOL            CloseSession();
 
    BOOL            AddMsgMap( CString strMsgCategory, CString strMapStr, long nFlag, CString strParam, long nLevel );
    BOOL            RemoveMsgMap( CString strMsgCategory, CString strMapStr );
    BOOL            RemoveAllMsgMap();
 
    UINT            DoSysCmd( CQLSysMsg *pSysMsg );
    BOOL            SetCmderCancel( long nTrID );
    BOOL            SetLoginInfo( CQLLoginInfo *pLoginInfo );
    void            SetTimeout( int nSecond = 20 );
 
    BOOL            SignIn( CQLLoginInfo *pLoginInfo );
 
    // Notify Process
    BOOL            OnSignIn( enum SIGN_IN_STATE nState, int nErrCode = 0 );
    void            OnConnectionClosed();
    bool            OnChallenges( CQLResponse *pResponse );
    void            OnNtyUserStatusChanged( CQLResponse *pResponse );
    void            OnNtyKillOut( CQLResponse *pResponse );
    virtual void    OnNtyNotify( CQLResponse *pResponse );
    virtual void    OnNtyOtherSysMsg( CQLResponse *pResponse, CString strCmdType = _T( "" ) );
    void            OnNotifyResponse( CQLResponse *pResponse );
 
/*    void            OnNtyNewMsg( CMsgItem *pMsg );
    void            OnNtyOpenMsg( CQLResponse *pResponse );
    void            OnNtyMeetRing( CQLResponse *pResponse );
    void            OnNtyMeetAskJoin( CQLResponse *pResponse );
    void            OnNotifySMA( CQLResponse *pResponse );
    void            OnNtyVioceRing( CQLResponse *pResponse );
    void            OnNtyNewMsg_AddIn( CString strAddInName, CMsgItem *pMsg );
 
    void            OnMeetConnectionClosed( CString strMeetID );
    void            OnMeetNotifyResponse( CQLResponse *pResponse );
    void            OnMeetNewMsg( CMsgItem *pMsg );
    void            OnMeetError( UINT nErrCode, CString strMeetID, UINT nTrID );
    void            OnMeetResponse( CQLResponse *pResponse );
*/
    // Commander Process
    virtual void    OnCmderError( UINT nErrCode, UINT nTrID, CString strParam );
    virtual void    OnCmderResponse( CQLResponse *pResponse, CQLCommander *pCmder, BOOL &bRemoveCmder );
    void            OnCmderResponse( CQLResponse *pResponse, CString strBodfy = _T( "" ) );
 
//    void            CancelUploadFile( int nTrID, CString strAttachFile );
//    void            CancelDownloadFile( int nTrID, CString strAttachFile );
 
//    void            OnMsgSendAttach( UINT nTrID, CString strMsgID, CString strFileName, int nReaded, int nAttachSize );
//    void            OnMsgDownloadAttach( UINT nTrID, CString strMsgID, CString strFileName, int nWrited, int nAttachSize );
 
    virtual    CQLCommander *    NewCmderByCMDName( CString strMethod )    { return NULL; }
 
};
 
/////////////////////////////////////////////////////////////////////////////
 
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.