小弟现在在写一个socket的程序,对端是用c写的。C把c的一个结构体memcpy到一个buf中,然后发送。接收端用delphi,我收到stream后,如何还原其结构体内容,读出。
解决方案 »
- DLL导出函数和接口的区别及应用场合?
- 简单的循环!大大们进啊!在线等!
- 请问一下,如何从dll中传出一个字节数组出来
- webconnection连接后,服务器资源不释放,数据库连接也未能进行断开!
- Indy 组件的 tcp/ip组件,客户端如何才能正确识别与服务端的连接状态!
- 如果取得 msn 登陆框里的那个帐户列表?
- 请问怎样用VCL实现简单的(只有文字的)html的所见即所得编辑
- WebBrowser1.Navigate('d:\mapping\zyz_para2001.htm');的问题
- 疑惑,求解!关于function or procedure前面的class关键字
- 只剩下61分了,请帮忙:怎样减慢wav文件的播放速度?该怎样插值?=====————
- QuickRep的连续打印???
- 有喜欢听张震恐怖故事的朋友请进来。
另外注意:从stream读内容到结构变量的时候加"^"
例如:
p : PRecord;p := AllocMem(sizeof(Record));stream.read(p^,sizeof(Record));
typedef
{
int i;
word j;
}myrecord;你必须先在delphi定义这个结构:
type
myrecord = record
i : integer;
j : word;
end;
pmyrecord = ^myrecord;读出:
var
p : Pmyrecord;
begin
p := AllocMem(sizeof(myrecord));
stream.read(p^,sizeof(myrecord));
然后就可以访问了:
xxx := p.i;
yyy := p.j;
...