将SSS中的数据读入BUFFER中了!
解决方案 »
- 用Delphi实现论坛灌水机的源码不能调试通过
- 怎么在delphi中调用时间查工作
- cxgird中实现复制当前单元格的功能
- 100分下班揭帖!求如何通过delphi备份数据库数据,还有还原!
- 用Tlistview能实现缩略图功能吗?如果能如何实现?
- 在WIN2000单机上安装了MSSQL70,希望模拟网络环境开发,但是SQL SERVER GRUOP下建立的数据库
- 大家给点建议
- form之间全局变量传值问题
- 不用TFindDialog能否实现?
- qin_wei,chechy,dp,分收到了吗?
- 如何使DELPHI程序运行在后台或能像输入法一样在状态栏小图标区
- 谁有delphi update pack 1 的序列号?
DDDD=RECORD
D:STRING[12];
DD:INTEGER;
END;var sss:pdddd; getmem(sss,500);
sss^.d:=...;
sss^.dd=...;
socket.sendbuf(sss,500)
freemem(sss);
不知对不对。可能size=500有错。
DDDD=RECORD
D:STRING[12];//不能这么定义
DD:INTEGER;
END;应该定义为:
typeDDDD=RECORD
D:array[0..11] of char;
DD:INTEGER;
END;
另外注意对方是否有字节对齐的问题,当然对于你上面的结构,是不用考虑的。Var
sss:dddd;
strSend:String;
Begin
strSend:='d string'
StrCopy(sss.d,Pchar(strSend));
sss.dd:=222;
clientsocket1.socket.sendbuf(sss,sizeof(dddd));
// ^^^注意这里不是指针
End;
要是按楼上的朋友的写法应该写成:
....socket.sendbuf(sss^,500)