windows socket API 封装起来的两个类,服务器端跟客户端分开,且已考虑粘包的处理情况。并利用这两个类做了一个局域网聊天程序。
服务器端:listen一个线程,每accept一个客户端,新开一个线程,专门负责recv,一旦recv到信息,会发送给HWND相应消息,wParam和lParam包含相应信息,HWND在类的Create成员函数中指定。
客户端:一旦connect成功,则新开一线程专门recv,一旦recv到信息,会发送给HWND相应消息,wParam和lParam包含相应信息,HWND在类的Connect成员函数中指定。Connect成员函数有一个参数指定重试连接次数(每次一秒),所以如果服务器没开的话,Connect成员函数不会被一直阻塞住。
一旦有了这两个类,就能很方便地把以前的单机小游戏加上联机对战功能。
注意:若你编译有错误,可能是你没有MFC42UD.dll等这些动态链接库的Debug版本,请在网上下载这些dll或直接编译成Release版本。
1