psycheqiqi 发表于 2009-10-9 14:30:45

ACE_MESSAGE_BLOCK的问题

我用ACE_MESSAGE_BLOCK从客户端给服务器发送文本信息,文件名,文件内容三种消息,
在服务器端的READ_STREAM中的ace_message_block接受到以上三种消息时如何分别

我看了有加数据包头的方法,但是没看明白。
我想的就是在发送的时候在每个ACE_MESSAGE_BLOCK的最后面一位加一个特殊符号来区分以上三种消息,但是在接受的时候怎么判断ACE_MESSAGE_BLOCK的最后一位是什么

简单的说,如何判断ace_message_block的最后一位字符是什么?

我好啰嗦啊:hug:

winston 发表于 2009-10-9 14:46:21

用这种格式:
数据长度:数据内容:数据长度:数据内容:数据长度:数据内容

psycheqiqi 发表于 2009-10-9 15:01:41

回复 #2 winston 的帖子

是在对话框中点击不同的按钮发送以上的三种消息。

发送和接受实现的方法参照了http://www.acejoy.com/bbs/viewthread.php?tid=641&extra=page%3D6的。

不明白如何设置数据长度:数据内容:数据长度:数据内容:数据长度:数据内容

ace_message_block不能查看其最后一位吗?可不可以转化成char*之类的?

winston 发表于 2009-10-9 17:31:36

message_block操作极其灵活方便,请参考手册,这里不详述了。你要的操作,都可以实现。
我说的长度:内容,是你需要设计的简单的自定义协议。一头拼协议包,另外一头拆协议包即可。

shenming 发表于 2009-10-9 19:35:36

用msg_type()来区分数据类型

一般可以使用消息类型来区分数据类型。

可以自定义类型

wishel 发表于 2009-10-11 15:23:13

类型信息放最后面?去看看其他协议,都是做header哪有做tail的?
页: [1]
查看完整版本: ACE_MESSAGE_BLOCK的问题