说是TCP Socket的问题实际上是record type和tmemorystream的问题.当我定义了一个record后,用tmemorystream.write方法写入,如:
type
tmyrec=record
mychar:array [0..15] of char;
myword:word;
.....
mynum:array [0..31] of byte;
end;
var
rec:myrec;
mystream:tmemorystream;
begin
with rec do
begin
...
赋值
...
end;
mystream:=tmemorystream.create;
mystream.write(rec,sizeof(tmyrec));
clientsocket.socket.send(mystream);
.....
.....
end;
这样使用record和tmemorystream是否正确?希望高人伸一把手.
致kxy:
异常信息:**.exe raised exception class ESocketError with message 'windows socket error'(10057),on API 'rec'.process stopped.
winsock error codes 10057应该为:Socket is not connected.
我搞不懂为什么。