TClientSocket问题。超急!!!要多少分给多少(200分)

  • 主题发起人 主题发起人 popewh
  • 开始时间 开始时间
P

popewh

Unregistered / Unconfirmed
GUEST, unregistred user!
ClientSocket与ServerClient建立连接后,ClientSocket1->Socket->SendText(“ddd”);
第一次Send服务器能收到,第二次就收不到了,请问为什么。

现在只有一个客户端和一个服务器端。
 
哪位大哥大姐如果知道的话,请把答案发到我的邮箱里
w.hao@neusoft.com

万分感谢
 
是不是发送一次后连接断了?发送完后有没有关闭套接字啊?
 
发送一次后没断开连接,至少代码上没有。
第二次发送的时候,Send返回值是正确的,和我发送的字节数是一样的 ,
 
为确保正常发送
socket disconnect -> connect ->send ->disconnect;
 
ClientSocket1->Socket->SendText(“1. ddd”);
Application.ProcessMessage;
ClientSocket1->Socket->SendText(“2. ddd”);
Application.ProcessMessage;
ClientSocket1->Socket->SendText(“3. ddd”);
Application.ProcessMessage;
 
ClientSocket与ServerClient建立连接后,ClientSocket1->Socket->SendText(“ddd”);
第一次Send服务器能收到,第二次就收不到了,请问为什么。

我也遇到过这种情况,这主要是两次发送的数据时间间隔太短,包粘连的结果,其实你第一次收到的是"DDDDDD"
 
贴代码看看,我好象碰到过,好象是因为在server端没即时处理
 
两次发送之间sleep(300)一下就好了[:D]
 
丢包与堵塞。。
你可以使用SLEEP等一下了。。让程序反映一下了。
如果字符很短
你可以试试,设定开始和结尾定个标志了,接收稳定些。。
 
后退
顶部