我在客户端程序中有这么一段
if clientsocket1.Active=false then
ClientSocket1.Open;
ClientSocket1.Socket.SendText('KillThread');
如果我运行这一段程序之前clientsocket1.Active=false那么这一段程序执行后
服务器端不会有ServerSocket1ClientRead事件发生,然后再次执行客户端的那一段程序(注意这时由于第一次执行时ClientSocket1.Open;
所以这时clientsocket1.Active=true)服务器短发生ServerSocket1ClientRead事件
这是为何
if clientsocket1.Active=false then
ClientSocket1.Open;
ClientSocket1.Socket.SendText('KillThread');
如果我运行这一段程序之前clientsocket1.Active=false那么这一段程序执行后
服务器端不会有ServerSocket1ClientRead事件发生,然后再次执行客户端的那一段程序(注意这时由于第一次执行时ClientSocket1.Open;
所以这时clientsocket1.Active=true)服务器短发生ServerSocket1ClientRead事件
这是为何
解决方案 »
- report machine 三级主从报表
- 问一个句柄的问题,是不是任何控件都有句柄啊?
- 求一CRC8算法,内容已经给出 大家快来抢分 正线等 (解决另开帖送上200分)
- VC中的CTypedPtrList结构在DELPHI中可有与之对应的对象?是翻译遇到了问题,可用分只有20分了
- delphi中如何在运行时创建临时表,具体请看正文,谢谢!
- 关于SSL,OpenSSL 的问题
- 怎么没人能够解答这个问题,100分挑战高手!谁解答成功,送150分!!(含原贴)如何把UCP数据传送到代理服务器内的某台主机??????
- 日期转化为大写的问题?
- stringgrid 问题高手请进
- 存储过程请教,紧急
- 如何使DBEDIT可以多行显示,请教!
- 用TADOQuery是否可以一次执行两个Select语句,然后这两个语句的结果集合在一起显示在一个DBGrid上?
begin
ClientSocket1.Open;
sleep(2); //适当的延时一段时间;也可以用application.processmessage
end; ClientSocket1.Socket.SendText('KillThread');