当某天听了计算机系统基础的实验课的网络课程之后,心血来潮写了这个程序。
程序由服务端和客户端组成,服务器打开后,可以接受最多200个客户端的连接(多线程),随时接受客户端的信息,并发给其他客户端,同时可以显示如在线人数、退出房间一类的简单的系统信息。
程序使用的是控制台程序,使用起来不方便,以后考虑改为图形界面。
工程文件:http://pan.baidu.com/s/1o7yGfA6
曾经把服务端放在腾讯给的一块钱的服务器上运行过一段时间,效果还可以。
如果想在自己的服务器上实验,需要把客户端System.cpp下面代码中的ip地址(127.0.0.1)改成服务器的ip
void connectServer()
{
WSADATA wsaData;
sockaddr_in addrout;
WSAStartup(MAKEWORD(2, 2), &wsaData);
server=socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
addrout.sin_family=AF_INET;
addrout.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");
addrout.sin_port=htons(8973);
connect(server, (SOCKADDR*)&addrout, sizeof(SOCKADDR));
return;
}