结构或大内存块打包的办法(上2)
来源:互联网 发布:社交网络电影完整版 编辑:程序博客网 时间:2024/05/23 17:38
The information in this article applies to: |
- Microsoft Visual C++ 6.0,SP5 |
结构或大内存块打包的办法(上)
Revision History:
对本文档所有修改都应按修改时间顺序记录在此。
Version | Date | Creator | Description |
1.0.0.1 | 2004-2-23 | 郑昀 | 草稿 |
Implementation Scope:
继续阅读之前,我们假设您熟悉以下知识:
n SAFEARRAY
n ISTREAM
n Microsoft MSMQ
目录:
1:概述
2:借用SAFEARRAY打包把结构写入MSMQ队列
3:借用IStream流打包传递数据到MSMQ队列
下面给出读取MSMQ消息时解析的步骤(VC++代码):
//////////////////////////////////////////////////////////// //Added Headers: //////////////////////////////////////////////////////////// #include #include /////////////////////////////////////////////////////////// //Added for MSMQ: /////////////////////////////////////////////////////////// #import "mqoa.dll" no_namespace, named_guids typedef struct _DATA { int _n; char _str; }_DATA; //main: { .. .. .. .. hr = pisQI->raw_Open(MQ_PEEK_ACCESS,MQ_DENY_NONE,&pisQueue); IMSMQMessagePtr piMessage; // 获取MSMQ队列中的一个消息: piMessage = pisQueue->PeekCurrent(); _DATA *msg = new _DATA(); // 解析函数: ChangeVariant2Struct(CComVariant(piMessage->Body), msg); .. .. } // ChangeVariant2Struct函数的定义: // 第一个参数: // 类型:CComVariant // 作用:源 // 第二个参数: // 类型:_DATA* // 作用:接收者 HRESULT ChangeVariant2Struct (CComVariant &var, _DATA *DP) { SAFEARRAY* psa; BYTE HUGEP *lpb; psa = var.parray; SafeArrayAccessData(psa, (void HUGEP **)&lpb); CopyMemory((LPVOID)DP, (LPVOID)lpb, 8); SafeArrayUnaccessData(psa); return S_OK; } |
Writen by zhengyun.NoJunk(at)tomosoft.dot.com
Disclaimers:
Programmer’s Blog List: |
[MVPLeader]Grace Zhang |
本文档仅供参考。本文档所包含的信息代表了在发布之日,zhengyun对所讨论问题的当前看法,zhengyun不保证所给信息在发布之日以后的准确性。
用户应清楚本文档的准确性及其使用可能带来的全部风险。可以复制和传播本文档,但须遵守以下条款:
- 复制时不得修改原文,复制内容须包含所有页 ;
- 所有副本均须含有 zhengyun的版权声明以及所提供的其它声明 ;
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=12750
- 结构或大内存块打包的办法(上2)
- 结构或大内存块打包的办法(上2)
- 结构或大内存块打包的办法(上2)
- 结构或大内存块打包的办法(上2)
- 结构或大内存块打包的办法(上2)
- 结构或大内存块打包的办法(上2)
- 结构或大内存块打包的办法(中)
- 结构或大内存块打包的办法(中)
- 结构或大内存块打包的办法(下)
- 结构或大内存块打包的办法(中)
- 结构或大内存块打包的办法(下)
- 结构或大内存块打包的办法(中)
- 结构或大内存块打包的办法(中)
- 结构或大内存块打包的办法(下)
- 结构或大内存块打包的办法(中)
- 结构或大内存块打包的办法(上1.1)
- 结构或大内存块打包的办法(上1.2)
- 结构或大内存块打包的办法(上1.1)
- 结构或大内存块打包的办法(上1.1)
- 阳为SS/SN 阴为SP(中)
- [Regex]Greta不支持“Named Groups”特性
- 处理BLOCK
- [Domino]Java访问Domino R5必需配置的服务器设置
- 结构或大内存块打包的办法(上2)
- 致命的效率:漫谈RSS阅读器效率
- 结构或大内存块打包的办法(下)
- [SQL]数据库置疑的故事
- [C#][正则表达式]寻找匹配的Groups的几种方法
- 阳为SS/SN 阴为SP(下)
- 阳为SS/SN 阴为SP(上)
- 搜索某个字符串在那个表的那个字段中
- 结构或大内存块打包的办法(上1.2)