?? tcpserver_ce.h
字號:
// TCPServer_CE.h: interface for the CTCPServer_CE class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_TCPSERVER_CE_H__711FE909_4A87_4123_95F8_45160691659D__INCLUDED_)
#define AFX_TCPSERVER_CE_H__711FE909_4A87_4123_95F8_45160691659D__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <winsock.h>
class CTCPCustom_CE;
class CTCPServer_CE;
//定義客戶端連接建立事件
typedef void (CALLBACK* ONCLIENTCONNECT)(CWnd*,CTCPCustom_CE*);
//定義客戶端SOCKET關閉事件
typedef void (CALLBACK* ONCLIENTCLOSE)(CWnd*,CTCPCustom_CE*);
//定義客戶端當有數據接收事件
typedef void (CALLBACK* ONCLIENTREAD)(CWnd*,CTCPCustom_CE*,const char * buf,int len );
//定義客戶端Socket錯誤事件
typedef void (CALLBACK* ONCLIENTERROR)(CWnd*,CTCPCustom_CE*,int nErrorCode);
//定義服務器端Socket錯誤事件
typedef void (CALLBACK* ONSERVERERROR)(CWnd*,CTCPServer_CE*,int nErrorCode);
class CTCPServer_CE
{
public:
CTCPServer_CE();
virtual ~CTCPServer_CE();
public:
int Open(); //打開TCP服務
int Close(); //關閉TCP服務
private:
//線程處理函數
static DWORD SocketThreadFunc(PVOID lparam);
public:
int m_LocalPort; //設置服務端口號
CWnd * m_pOwnerWnd; //父窗口句柄
private:
SOCKET m_ServerSocket; //TCP服務監聽socket
HANDLE m_serverThreadHandle; //通訊線程句柄
HANDLE m_exitThreadEvent; //通訊線程退出事件句柄
public: //定義事件
//客戶端連接建立事件,回調函數
ONCLIENTCONNECT OnClientConnect;
//客戶端連接斷開事件,回調函數
ONCLIENTCLOSE OnClientClose;
//客戶端接收數據事件,回調函數
ONCLIENTREAD OnClientRead;
//客戶端發生錯誤事件,回調函數
ONCLIENTERROR OnClientError;
//服務器端發生錯誤事件,回調函數
ONSERVERERROR OnServerError;
};
#endif // !defined(AFX_TCPSERVER_CE_H__711FE909_4A87_4123_95F8_45160691659D__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -