怎么用SOCKET传送一个自定义类型的数据

jjweb 2003-01-15 11:33:50
例如:
type
srecord=record
SS_Handle: integer;
request_str: string;
end;
怎么把一个Srecord类型的变量用SOCKET传送?
...全文
29 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
BlueTrees 2003-01-18
注意:传送String类型或者在结构中包含string的都要注意。同样的适用于传送对象,一般好像还没有人直接传送对象吧!嗬嗬

string类型的必须转移到一个明确长度的Pchar当中,并且不要在结构中包含,要在结构中包含的,必须在结构中使用静态数组
回复
stanely 2003-01-18
任何数据包括自定义数据都是放在一段内存区域内的,
所以理论上socket.send(buf,len);可以发送一切数据.

但是似乎超过8k就不行了.
回复
jackie168 2003-01-18
up
回复
Tspeng 2003-01-18
将request_str定义为
request_str:array[0..dataLen-1]of char
ss_Handle可通过自定义协议来实现。
回复
huang_gong 2003-01-16
不过,用string类型送好吗?我一般都改成 char;数组
回复
CoolDesigner 2003-01-16
上面写错了,应该是Socket.SendBuffer(srecord,sizeof(srecord))
回复
CoolDesigner 2003-01-16
Socket.WriteBuffer(srecord,sizeof(srecord))
回复
CoolDesigner 2003-01-16
Socket.ReadBuffer(srecord,sizeof(srecord))
回复
发动态
发帖子
网络通信/分布式开发
创建于2007-08-02

1565

社区成员

Delphi 网络通信/分布式开发
申请成为版主
社区公告
暂无公告