idTCPClient 为什么我只能发一次呢 只有第一次收到,第二次就不能收到,怎么回事呢(100分)

  • 主题发起人 主题发起人 goddy
  • 开始时间 开始时间
G

goddy

Unregistered / Unconfirmed
GUEST, unregistred user!
var CBID:TCBID;
Buffer:Array[1..2048]of char;
begin
Buffer[1]:=skMySendPlan;
CBID.myid:=Me.ID;
CBID.HisID:=5;
CopyMemory(@Buffer[2],@CBID,SizeOf(CBID));
ClientTCP.WriteBuffer(Buffer,SizeOf(CBID)+1,True);
 
你在服务器端,保存了客户端的端口和IP吗?
另外,你在服务器端,一直保持和客户端的连接没有断开吗?
 
接收的是怎么写的
 
tcp 有时候收不到,一般都可以,为什么有时候会收不到呢
 
肯定是程序有问题。TCP是可以保证收到数据的。我就没遇到过收不到的情况。把你的代码贴出来
 
有这个问题 发两个相同的数据结构的数据有 时候是发不过去的.indy把这两个数据当一个处理了,indy在粘包处理的时候的问题,可以在中间发个数据在发数据包就可以.或者不用indy
 
delphfans 好像是这这个问题,我收时发的结构是一样的
发给服务器 和服务器再转给自己就不行了,但是发给别人可以
 
找到那个socket连接,必
把代码贴出来看看吧
 
这个是indy 的问题要修改indy组建或者中间发个其他的消息
 
http://www.2ccc.com/article.asp?articleid=2870
我写的indy多线程网络传输,参考一下。
 
我找到了,程序有问题,我在别一个地方要 但是没有收,缓存里面还有,所以跑错过方了
 
多人接受答案了。
 
后退
顶部