文章目录
1.ABCBank客户/服务器模型搭建
- Server类
ABCBank\BankServer\Server.h
ABCBank\BankServer\Server.cpp
- BankThread类
ABCBank\BankServer\BankThread.cpp
ABCBank\BankServer\BankThread.h
- Client类
ABCBank\BankClient\Client.h
ABCBank\BankClient\Client.cpp
注意:
客户端的LoginForm的Login去连接服务器端
-
eg:P104\ABCBank-0.2.1
-
将ABCBank\BankClient和ABCBank\BankServer生成的可执行文件放到Bin目录下面
原来的OutDir目录是在与BankClient.sln文件同级的目录底下
生成的可执行文件的位置就在Bin目录下咯
#define WIN32_LEAN_AND_MEAN
包含了该宏,就不会由下面的头文件
- 测试:
服务器端有客户端关闭的原因是:
ABCBank\BankClient\UI\LoginForm.cpp中的socket是局部变量,该局部变量销毁会调用,客户端的Socket
对象会调用析构函数,析构函数中会调用close。
客户端调用close,那么服务端则会接收到=0,所以服务端会显示客户端关闭了。
这个程序是短连接的,所以用局部变量是没有问题的。
短连接含义:一次连接,只做一个业务,业务做完,就把连接关闭。
一旦连接上服务器,把业务做完之后,将其关闭掉。
Socket sock;