关于在线聊天的问题?(50分)

P

p2p

Unregistered / Unconfirmed
GUEST, unregistred user!
当我要用clientsock向服务器段发送信息时(信息的内容包括:发送者的昵称,
接受人的昵称和发送信息),我把它用一个结构体来储存这些信息,但clientsock
的write只能发送文本,怎样来实现这个功能呢?
 
用标识,然后在服务器端将字符串解开分析,
比如,发送者的昵称用“%SSS”接受人的昵称用“¥YYY”发送信息用“*XXXXXXXXX”
var info:string;
....
info:='%'+发送者的昵称+'¥'+接受人的昵称+'*'+发送信息;
socket.sendtext(info);
....
然后在服务端将这个字串分解成你要的就可以了.
 
我就是不想这样子,因为这样太麻烦了,因为如果信息太多了,超过10个信息的话在服务器
端的解释就变得非常复杂,所我猜想把它用一个结构体来记录并传递,哪伟大虾能帮帮小弟!
 
真的没有人懂吗?请斑竹帮帮忙?
 
你们啊,真懒!!
用socket.sendbuf(),一切解决!管他发送什么图像、文字、视频、音频...
 
采用Masm的想法。
实现的时候采用结构体
type
Record =record
呢称
用户名
信息
end;
对record写入数据,采用sendbuf()方式发送,可以实现。
over
 
有没有例子啊?大哥
 
你可以用TStringList来完成你的功能
例如:客户端 
Var Msg:TStringList;
Msg.Add(呢称);
Msg.Add(用户名);
Msg.Add(信息);
Send(Msg.Text);
  服务器端
    var Msg:TStringList;
Msg.Text := Read();


 
顶部