请教!!用udp传输图片问题???

yancx2004 2006-10-23 02:05:45
我在客户端抓取图片用udp协议传输图片,我在客户端
var
pathname : string;
picstream : TMemorystream;
jpg : TJPEGImage;
begin
jpg := TJPEGImage.Create;
pathname := '9.bmp';
image1.Picture.Bitmap.LoadFromFile(pathname);
jpg.Assign(image1.Picture.Bitmap);
picstream := TMemorystream.Create;
jpg.SaveToStream(picstream);
picstream.SaveToFile('1.bmp');
showmessage(inttostr(picstream.size)); //显示picstream.size := 52043 我把 IdUDPServer1.buffersize 设为60000
IdUDPServer1.SendBuffer('127.0.0.1',9001,picstream,sizeof(picstream));
end;
服务器端:
var
picstream : TMemorystream;
begin
//sleep(10000);
picstream := TMemorystream.Create;
picstream.CopyFrom(adata,sizeof(adata));
picstream.SaveToFile('3.bmp');
end;
结果是3.bmp只在4k,图片也没读出来。
请教这是为什么呀????

...全文
282 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yz_34212248 2006-11-04
  • 打赏
  • 举报
回复 1
我碰到一个更奇怪的问题,发送端发送了300多笔2048大小的数据包,而接受端只接收到了10几笔,都说UDP传输可能丢包,但是也不至于丢成这样啊。
kkk3k3k 2006-11-03
  • 打赏
  • 举报
回复
udp 包太太大了 楼上是说法是错误的 udp不可靠
ly_liuyang 2006-10-23
  • 打赏
  • 举报
回复 1
UDP不是可靠传输嘛~
gogogo 2006-10-23
  • 打赏
  • 举报
回复
udp问题,你的报文太大了,udp报文大小不是你的buffer大小。多研究下udp的收发,不要看到方法就乱用,看下udp收发的demo
yancx2004 2006-10-23
  • 打赏
  • 举报
回复
有人在吗???

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧