我有一段 java 代码递归地从 pst 文件中提取记录。虽然,我可以提取带有 ole 附件的电子邮件,并且可以访问附件的二进制值。我不知道如何将二进制值实际转换为可以附加到 mime 消息的东西。
问问题
354 次
1 回答
0
OLE 附件 (IStorage) 包含的数据格式只有创建对象的 COM 服务器才能理解(例如 Word 或 Excel)。Outlook 对象模型不允许保存这样的附件。我也不认为您可以通过 Java 中的 IAttach::OpenProperty(PR_ATTACH_DATA_OBJ, ...) 访问 IStorage 对象。
在OutlookSpy中可以看到附件数据——选择邮件,点击IMessage按钮,进入GetAttachmentTable选项卡,双击附件,选择PR_ATTACH_DATA_OBJ属性,右键,IMAPIProp::OpenProperty,选择IStorage接口——你会看到IStorage 对象及其流。
您可以尝试使用Redemption - 它的RDOAttachment .SaveAsFile 方法为位图 (BMP)、Windows 元文件 (WMF/EMF)、Excel、Word、PowerPoint、写字板和 Adobe PDF 文件格式提取数据。
于 2014-05-05T16:41:14.823 回答