⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tcpclient_ce.h

📁 WinCE下利用TCP进行网络通讯的例子
💻 H
字号:
// TCPClient_CE.h: interface for the CTCPClient_CE class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_TCPCLIENT_CE_H__B7856B99_69E7_4868_9BA3_96152245C65E__INCLUDED_)
#define AFX_TCPCLIENT_CE_H__B7856B99_69E7_4868_9BA3_96152245C65E__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <winsock.h>

// 回调函数 (回调函数,需在主程序实现)
typedef void (CALLBACK* ONDISCONNECT)(CWnd*);	// 连接断开事件
typedef void (CALLBACK* ONREAD)(CWnd*, const char * buf, int len );	// 当有数据接收事件
typedef void (CALLBACK* ONERROR)(CWnd*, int nErrorCode);	// Socket错误事件

class CTCPClient_CE  
{
public:
	CTCPClient_CE();
	virtual ~CTCPClient_CE();

public:
	CString	 m_remoteHost;	// 远程主机IP地址
    int      m_port;		// 远程主机端口

	// 对外接口
	bool Open(CWnd * pWnd);	// 打开客户端socket
	bool Close();			// 关闭客户端socket
	bool Connect();			// 与服务器端建立连接
	bool SendData(const char * buf , int len);	// 向服务器端发送数据
    
	// 客户端通讯事件
	ONDISCONNECT OnDisConnect;	// 连接断开事件
	ONREAD       OnRead;		// 接收数据事件
	ONERROR      OnError;		// 发生错误事件

private:
	CWnd * m_pOwnerWnd;			// 父窗口句柄
	SOCKET m_socket;			// 通讯Socket句柄 
	HANDLE m_exitThreadEvent;	// 通讯线程退出事件句柄
	HANDLE m_tcpThreadHandle;	// 通讯线程句柄

    // 通讯线程函数
	static DWORD SocketThreadFunc(LPVOID lparam);
};

#endif // !defined(AFX_TCPCLIENT_CE_H__B7856B99_69E7_4868_9BA3_96152245C65E__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -