找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 5282|回复: 2

求助:关于ACE_Message_Block

[复制链接]
发表于 2009-5-6 20:27:16 | 显示全部楼层 |阅读模式
首先请大家看段代码
virtual void handle_read_stream
(const ACE_Asynch_Read_Stream::Result &result)
{
     ACE_Message_Block &mb = result.message_block ();
     if (!result.success () || result.bytes_transferred () == 0)
     {
         mb.release ();
         delete this;
         return;
     }
    CTexture ctexp;
    ctexp.ReadBmpFile ("F:\picture.BMP");
    unsigned char *pData=ctexp.GetData();
................
}
ReadBmpFile函数功能读取硬盘BMP文件到*pData中,再将*pData中的数据发送给客户端要怎么实现,怎样通过ACE_Message_Block 实现呢?因为写文件rs_.write()的第一参数是ACE_Message_Block .谢谢帮忙!
 楼主| 发表于 2009-5-6 21:15:37 | 显示全部楼层
char data[sizeof(pData)];
ACE_Message_Block *mbb=new ACE_Message_Block(data,sizeof(pData));
发表于 2009-5-7 18:05:10 | 显示全部楼层
直接复制就成!
申请足够的空间后,用ACE_Message_Block的复制函数复制。
int ACE_Message_Block::copy  (  const char *  buf,   size_t  n  )   ;
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

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

GMT+8, 2024-11-23 16:07 , Processed in 0.232004 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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