TIdUDPClient如何传动态数组 我想请问一下,用TIdUDPClient如何传动态数组,当我用动态数组传值时,TIdUDPServer接收到后就不对,如果不用动态数组就很好.是不是不能传动态数组啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没问题的,在Indy10,发送过程参数就是动态数组 Indy9也没问题呀,把数组中的内容全部放在流中发送就可以了,我想你可能把数据存入流中时,弄错了 大概就是a:array of integer;FSendStream:TMemoryStream;setlength(a,2);a[0]:=1;a[1]:=2;FSendStream.Write(a,length(a));其中用:FSendStream.Write(a[0],length(a));FSendStream.Write(a,sizeof(a));都试过IdUDPClient1.SendBuffer(FSendStream.Memory^, FSendStream.Size);-------------------接收---------------------------------------------setlength(a,2);FSendStream.ReadBuffer(a,adata.size);基本上主要部分就这些 madyak(无天) 请问你能把你关于传动态数组的主要代码贴出来吗 你这样用试试发送FSendStream.Write(a[0],length(a)*SizeOf(Integer));收用FSendStream.ReadBuffer(a[0],length(a)*SizeOf(Integer)); madyak(无天) 说的方法是对的.FSendStream.Write(a[0],length(a)*sizeof(Integer));不过这样接收前,一定要为动态数组先分配空间.也就是先要setlength(a,2); 你注意一下读取和写入FSendStream时的FSendStream当前指针位置FSendStream.Position的值,你要是没有把握就写入和读取前将FSendStream.Position:=0; 是 FSendStream.Read(a[0],length(a)*sizeof(Integer));不是:是读出,NOt写入;FSendStream.Write(a[0],length(a)*sizeof(Integer)); 如何实现背景视频效果 (在线等待哈!很急的!)请教高手,看看我的程序,问题在哪,付上了错误提示的!!() 怎样得到任务栏的高度? 在delphi 6.0中如何播放MOV文件? 请高手解释一下,如下这个存储过程的代码。给分率 100%。 如何循环a b c d........? 大家帮宝宝取名,姓左,不知道男孩女孩. 聊天记录 刚用DELPHI,有几个问题请教!!!!! 新手再次發問? 哪位高救救命!!!一定送分。 delphi 如何连接远程数据库???并进行操作 关于CRViewer9的使用
a:array of integer;
FSendStream:TMemoryStream;setlength(a,2);
a[0]:=1;
a[1]:=2;FSendStream.Write(a,length(a));
其中用:FSendStream.Write(a[0],length(a));FSendStream.Write(a,sizeof(a));都试过IdUDPClient1.SendBuffer(FSendStream.Memory^, FSendStream.Size);
-------------------接收---------------------------------------------
setlength(a,2);
FSendStream.ReadBuffer(a,adata.size);基本上主要部分就这些
请问你能把你关于传动态数组的主要代码贴出来吗
发送
FSendStream.Write(a[0],length(a)*SizeOf(Integer));
收用
FSendStream.ReadBuffer(a[0],length(a)*SizeOf(Integer));
FSendStream.Write(a[0],length(a)*sizeof(Integer));不过这样接收前,一定要为动态数组先分配空间.
也就是先要setlength(a,2);
你要是没有把握就写入和读取前将FSendStream.Position:=0;
是读出,NOt写入;FSendStream.Write(a[0],length(a)*sizeof(Integer));