各位大侠关于Socket通讯的问题请帮忙,在下谢了先 TMemoryStream又不是一种特别的类型,接收并不需要一定要用Stream之类的东西.如果接收端采用阻塞方式就用TWinSocketStream读.如果接收端采用非阻塞方式就用ReceiveBuf 或ReceiveText读就是了. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可是我发送的时BMP图片和DOC文档,用receiceText怎么读出来阿。如果用receivebuf 请问怎么读出来,然后存放到一个内存流中去.不深感激 建议你自己约定一个传输数据的结构,比如这样定义:消息头: sig int // Size int //消息体长度消息体: (长度由Size决定)按照上面约定,可以下面这样var S:string; mstream:TMemoryStream; Sig:Integer; Size:Integer; ...mstream:=TMemoryStream.Create;Socket.ReceiveBuf(Sig,4); //读出消息分类标志Socket.ReceiveBuf(Size,4); //读出消息体长度SetLength(S,Size);S:=Socket.ReceiveBuf(pchar(S)^,Size);//读出消息体...//如果要存入内存流mstream.write(pchar(S)^,length(S));关于socket 的可以看看我的贴子http://www.csdn.net/develop/read_article.asp?id=10952http://www.csdn.net/develop/read_article.asp?id=11423 哦.上面这儿写错了.S:=Socket.ReceiveBuf(pchar(S)^,Size);//读出消息体应该是Socket.ReceiveBuf(pchar(S)^,Size);//读出消息体 求RSA算法原代码或者动态库 请问怎么样延时、暂停 edit或者maskedit只能限制某个字符的输入,能否像datetimepicker那样限制月份和天? 为何这个DataMoudle不能引用 请高手指教 链接服务器中的表可以用索引吗 那位有《可视化OpenGl程序设计》的附书光盘,能Copy一份给我吗? 请大家给点意见!! 如何用拖动的方法改变没有标题栏窗体的大小呢? 如何将一个短日期型子段值赋给maskedit? 有哪位高手愿意当我的老师,我己经学了将近两个月,只能编些小程序,我想请一位能让我提问的老师,我一定好好学,要绝对的高手,因为名师出高徒? 如何隐藏一个MDI子窗体
消息头: sig int //
Size int //消息体长度
消息体: (长度由Size决定)按照上面约定,可以下面这样
var
S:string;
mstream:TMemoryStream;
Sig:Integer;
Size:Integer;
...
mstream:=TMemoryStream.Create;
Socket.ReceiveBuf(Sig,4); //读出消息分类标志
Socket.ReceiveBuf(Size,4); //读出消息体长度
SetLength(S,Size);
S:=Socket.ReceiveBuf(pchar(S)^,Size);//读出消息体...
//如果要存入内存流
mstream.write(pchar(S)^,length(S));关于socket 的可以看看我的贴子
http://www.csdn.net/develop/read_article.asp?id=10952
http://www.csdn.net/develop/read_article.asp?id=11423
S:=Socket.ReceiveBuf(pchar(S)^,Size);//读出消息体
应该是
Socket.ReceiveBuf(pchar(S)^,Size);//读出消息体