TCPClient.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #ifndef _CLIENT_SOCKET_H_
  2. #define _CLIENT_SOCKET_H_
  3. #include "TcpParse.h"
  4. #pragma warning(push)
  5. #pragma warning(disable:4995)
  6. #pragma warning(pop)
  7. #include "CritSection.h"
  8. #include "SocketHandle.h"
  9. #include "SocketClientImpl.h"
  10. const int TCPCLIENTNUM = 10;
  11. class CTCPClient: public CDialog, public ISocketClientHandler
  12. {
  13. typedef SocketClientImpl<ISocketClientHandler> CSocketClient;
  14. friend CSocketClient;
  15. protected:
  16. // ISocketServerHandler
  17. virtual void OnThreadBegin(CSocketHandle* pSH);
  18. virtual void OnThreadExit(CSocketHandle* pSH);
  19. virtual void OnDataReceived(CSocketHandle* pSH, const BYTE* pbData, DWORD dwCount, const SockAddrIn& addr);
  20. virtual void OnConnectionDropped(CSocketHandle* pSH);
  21. virtual void OnConnectionError(CSocketHandle* pSH, DWORD dwError);
  22. void GetAddress(const SockAddrIn& addrIn, CString& rString) const;
  23. bool SetupMCAST();
  24. public:
  25. CTCPClient();
  26. ~CTCPClient();
  27. BOOL Connection(LPCTSTR strAddr, LPCTSTR strPort);
  28. void DisConnection(void);
  29. static CTCPClient* GetInstancePtr( int iTCPIndex );
  30. BOOL SendNoticeToServer( int iCmd,int iOperateType,CString sUserName,CString sUID,int iVarID );
  31. BOOL GetServerVer();
  32. BOOL TestAlarm();
  33. BOOL ConfigAlarm( CString sUID,int iVarID,int iStatus,int iAlarmIndex );
  34. public :
  35. CSocketClient m_SocketClient;
  36. CTcpParse m_TcpParse;
  37. BOOL m_bSocket;
  38. void Release();
  39. private:
  40. enum { IDD = 10 };
  41. int m_nSockType; //UDP »ò TCP
  42. int m_nMode; //IP4 »ò IP6
  43. static CTCPClient *m_pTcpClient[TCPCLIENTNUM];
  44. };
  45. #endif