我有一段java代码,以递归方式从pst文件中提取记录。虽然,我可以提取具有ole附件的电子邮件,并可以访问附件的二进制值。我不知道如何将二进制值实际转换为可以附加到mime-message的内容。
答案 0 :(得分: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文件格式。