找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 3505|回复: 5

ACE_MESSAGE_BLOCK的问题

[复制链接]
发表于 2009-10-9 14:30:45 | 显示全部楼层 |阅读模式
我用ACE_MESSAGE_BLOCK从客户端给服务器发送文本信息,文件名,文件内容三种消息,
在服务器端的READ_STREAM中的ace_message_block接受到以上三种消息时如何分别

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

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

我好啰嗦啊:hug:
发表于 2009-10-9 14:46:21 | 显示全部楼层
用这种格式:
数据长度:数据内容:数据长度:数据内容:数据长度:数据内容
 楼主| 发表于 2009-10-9 15:01:41 | 显示全部楼层

回复 #2 winston 的帖子

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

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

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

ace_message_block不能查看其最后一位吗?可不可以转化成char*之类的?
发表于 2009-10-9 17:31:36 | 显示全部楼层
message_block操作极其灵活方便,请参考手册,这里不详述了。你要的操作,都可以实现。
我说的长度:内容,是你需要设计的简单的自定义协议。一头拼协议包,另外一头拆协议包即可。
发表于 2009-10-9 19:35:36 | 显示全部楼层

用msg_type()来区分数据类型

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

可以自定义类型
发表于 2009-10-11 15:23:13 | 显示全部楼层
类型信息放最后面?去看看其他协议,都是做header哪有做tail的?
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

Archiver|手机版|小黑屋|ACE Developer ( 京ICP备06055248号 )

GMT+8, 2024-12-23 13:53 , Processed in 1.112743 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表