📄 qwkdz.h
字号:
//===========================================================================//
// 此程序类包装了WINSOCKET通讯的常规功能
// 最大的特点是:
// 1、整合了TCPIP和IPXSPX,简化编程代码
// 2、作为服务端时,可以在侦听到连接后自动启动新的线程
// 3、解决TCPIP等协议的定长收包的问题
//
// 使用说明:
// 服务端:
// XSocket clSvrSocket;
// clSvrSocket.CreateXSocket(XSOCKET_IPXSPX_SERVER, 地址, 通讯端口);
// clSvrSocket.ListenXsocket(100);
// while (TRUE)
// {
// if (...)
// break;
// AcceptXSocket(继承CWinThread的类); // 由该类进行本连接的数据收发处理,
// // 如果不传送该类,则可以通过GetConnectedSocket函数,
// // 在本线程进行处理。
// }
// clSvrSocket.CloseXSocket();
// 注:1、AcceptXSocket如果侦听到连接,则返回线程实例指针,可以保存该指针进行线程控制,
// 否则,返回NULL。
// 2、线程类可以从CWinThread.m_pThreadParams中获取到STRUCT_XSOCKET_INFO结构内容。
// 客户端:
// XSocket clCltSocket;
// clCltSocket.CreateXSocket(XSOCKET_IPXSPX_CLIENT, 服务端地址, 通讯端口);
// clCltSocket.ConnectXSocket();
// ......
// clCltSocket.Send(clCltSocket.GetSocket(), 数据, 数据包长度, 发送超时以秒为单位);
// ......
// clCltSocket.Receive(clCltSocket.GetSocket(), 数据, 数据包长度, 是否定长收包, 发送超时以秒为单位);
// ......
// clSvrSocket.CloseXSocket();
//
// 作者:钟桂全 [2001年03月15日]
// ZhongGQ@China.com
//===========================================================================//
#if !defined(__XS_Socket_File_Included__)
#define __XS_Socket_File_Included__
#include <winsock2.h>
#include <wsipx.h>
#include <wsnwlink.h>
#define XSOCKET_TCPIP_SERVER 0x00000001
#define XSOCKET_TCPIP_CLIENT 0x00000002
#define XSOCKET_IPXSPX_SERVER 0x00000004
#define XSOCKET_IPXSPX_CLIENT 0x00000008
LPCSTR GetHostIPXSPXAddr(void);
#endif // __XS_Socket_File_Included__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -