O oushengfen Unregistered / Unconfirmed GUEST, unregistred user! 2007-11-13 #1 IdTCPClient在以前的版本时,发送数据时,直接使用WriteBuffer就可以进行发送,现在Indy 10 下怎么没有发送Buffer的函数或过程了啊? 要与服务器端进行通讯,需要发送二制数据时,怎么发送啊。
IdTCPClient在以前的版本时,发送数据时,直接使用WriteBuffer就可以进行发送,现在Indy 10 下怎么没有发送Buffer的函数或过程了啊? 要与服务器端进行通讯,需要发送二制数据时,怎么发送啊。
Z zqw0117 Unregistered / Unconfirmed GUEST, unregistred user! 2007-11-13 #4 Indy10采用动态数组发送数据,所以没有WriteBuffer方法了,你如果是结构,需要用RawToBytes函数转换,如果是内存块,需要Move到IdBytes中才能发送。 uses IdGlobal; var Buf: TIdBytes; Rec: TMyRec; begin Rec.XXX := XXX; //赋值 Buf := RawToBytes(Rec, SizeOf(Rec)); IdTCPClient.Socket.Write(Buf); ... end; 上述伪码可能并不100%准确,请参考Indy帮助和Indy源码自行修改。
Indy10采用动态数组发送数据,所以没有WriteBuffer方法了,你如果是结构,需要用RawToBytes函数转换,如果是内存块,需要Move到IdBytes中才能发送。 uses IdGlobal; var Buf: TIdBytes; Rec: TMyRec; begin Rec.XXX := XXX; //赋值 Buf := RawToBytes(Rec, SizeOf(Rec)); IdTCPClient.Socket.Write(Buf); ... end; 上述伪码可能并不100%准确,请参考Indy帮助和Indy源码自行修改。
O oushengfen Unregistered / Unconfirmed GUEST, unregistred user! 2007-11-14 #7 Indy10的DEMO怎么很少,没有IdTCPClient这些例子啊。