outlook - Outlook.MailItem.EntryID 和 Mapi32.dll MessageID 之间的区别
问题描述
我需要从 Outlook VBO 做一些功能。假设我正在从 outlook.mailitem 下载附件。因此,我确实通过在 OutLook.MailItem.EntryID 前面添加了这些文件来保存这些文件,其中 EntryID 对于每封电子邮件都是唯一的。
现在,我有另一个使用 Mapi32.dll 并且需要访问文件的功能或应用程序。所以我使用 MessageID 属性来获取文件,但问题是当我从 Mapi32.dll 检索 MessageID 属性时,它返回类似于 AAAAAKHslFt5unxKlnJ80RmsEX8HAEYxSGm4YvNPlCN7Kj9X/A8AAAAAAQwAAEYxSGm4YvNPlCN7Kj9X/A8AAOy+SWQAAA
但 Outlook 中的 EntryID 是 1DCBEE7832C89149AFAEBC41B53EAB85
我认为 EntryID 和 MessageID 是相同的,但是是从 MapiEx 加密的吗?我怎样才能解密它以获得原始的 EntryID ?或者 Outlook.MailItem 对象和 Mapi32.dll MailMessage 对象之间是否有任何其他公共属性可以用来在两个工具之间共享信息?
解决方案
前者看起来像一个 base64 编码的条目 ID。后者看起来很奇怪 - 条目 ID 通常以 4 个二进制 0 开头(十六进制表示法中的八个“0”)。
推荐阅读
- css - 如何在多个组件中使用微调器
- jquery - Laravel 使用 if 语句添加类
- ios - Fabric Answer 在从 Xcode 10 和 iOS 12 开始时崩溃 iOS 应用程序
- javascript - Jquery 解析部分 XML 并将其保存在 localstorage 中
- java - 如何在 Android 上的两个 Activity 中使用 EventBus
- .net - AWS AmazonKeyManagementServiceClient.decrypt() 在 EC2 实例上超时
- logging - Yii2复制模型 - 行
- regex - 我需要删除属性标签
- compiler-errors - 字节和位运算符
- postgresql - 如何挂钩到 PostgreSQL 中的所有数据库操作