visual 在 c++ 中序列化 mapi 消息

visual Serialize a mapi message in c++

本文关键字:mapi 消息 序列化 c++ visual      更新时间:2023-10-16

我正在尝试做的是将mapimessage对象(LPMESSAGE(转换为可传输的格式,例如将其序列化为字节(我更喜欢这种方法(或xml格式。在这种情况下,最佳做法是什么?怎么做呢?有图书馆可以这样做吗?注意:我可以将 lpmessage 转换为 mime 并返回,但我注意到当我使用 iconversionsession 时它会丢失大部分属性。

如果你可以访问这些类的内部(我相信你可以(,我建议你通过这个关于序列化的常见问题解答:https://isocpp.org/wiki/faq/serialization。关于这个主题,您想知道的一切。(提示:如果您不这样做,则始终可以从它们派生并使用其他序列化方法扩展其接口。

如果您对实现自己的解决方案不感兴趣,可以尝试第三方,例如boost序列化lib:http://www.boost.org/doc/libs/1_60_0/libs/serialization/doc/index.html

您可以将 IMessage 转换为 .味精文件。 虽然不是一个完美的过程,但大多数情况下都会保留大多数属性,Outlook 可以打开这些序列化邮件,以便它们更易于使用(和验证(。 搜索 OpenIMsgOnIStg 的代码示例。

如果您不想使用 MSG 作为序列化格式,那么您将不得不推出自己的格式。 IMAPIProp 对象只是具有数字 ID 的属性包,但所有不同类型的属性值都必须以不同的方式保留。