T
t365
Unregistered / Unconfirmed
GUEST, unregistred user!
这个接收端的代码:
procedure TForm1.UDPReadEvent(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var
Buf:array[0..200] of Char;
begin
AData.Read(Buf,AData.Size);
Memo1.Lines.Add(Trim(Buf));
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
IdUDPServer1.OnUDPRead := UDPReadEvent;
end;
发送端的代码:
procedure TForm1.Button1Click(Sender: TObject);
var
Buf:array[0..200] of Char;
I:Integer;
S:string;
begin
for I:=1 to 100 do
begin
S := 'Test'+IntToStr(I);
StrFmt(Buf,'%-200s',);
IdUDPClient1.SendBuffer(Buf,SizeOf(Buf));
end;
end;
发送了100个包 但接收端一直接收不全,丢很多,为什么 呢,请高手帮忙啊,
只改接收端的实现,能不能解决这个问题呢,因为实际中发送端是别人做的,己
经是做好了的程序,没法改。
procedure TForm1.UDPReadEvent(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var
Buf:array[0..200] of Char;
begin
AData.Read(Buf,AData.Size);
Memo1.Lines.Add(Trim(Buf));
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
IdUDPServer1.OnUDPRead := UDPReadEvent;
end;
发送端的代码:
procedure TForm1.Button1Click(Sender: TObject);
var
Buf:array[0..200] of Char;
I:Integer;
S:string;
begin
for I:=1 to 100 do
begin
S := 'Test'+IntToStr(I);
StrFmt(Buf,'%-200s',
IdUDPClient1.SendBuffer(Buf,SizeOf(Buf));
end;
end;
发送了100个包 但接收端一直接收不全,丢很多,为什么 呢,请高手帮忙啊,
只改接收端的实现,能不能解决这个问题呢,因为实际中发送端是别人做的,己
经是做好了的程序,没法改。