Lotus notes插件:将电子邮件保存到eml文件

Lotus notes plugin: save email to eml file

本文关键字:保存 eml 文件 电子邮件 notes 插件 Lotus      更新时间:2023-10-16

在C++Lotus Notes插件中,我想将当前电子邮件(用hNote HANDLE表示)保存到.eml文件中。我浏览了文档,发现了函数NSFNoteExtractFile,它将给定的项(表示为BLOCKID)保存到一个文件中。但是我如何将hNote HANDLE转换为BLOCKID项目以将其保存到文件中?

您无法将注释句柄转换为BLOCKID。BLOCKID与注释中的项目相关联,而不是与注释本身相关联。NSFNoteExtractFile从注释中提取文件附件,但不会将注释转换为文件。也就是说,如果您有一封附有.doc文件的邮件,您可以使用NSFItemInfo来获取表示.doc文件注释中$file项目的BLOCKID,然后使用NSFNoteTextractFile将.doc文件(仅.doc文件)保存为水上硬盘文件。

据我所知,IBM Lotus仍然没有API来做您想做的事情。有一个Java API可以将消息内容转换为MIME格式,但您必须提供生成和格式化消息头的所有代码。这在Java中相当容易做到,但在C++中,您可能需要自己提供大量逻辑。这是Bob Balaban的一篇博客文章的链接,其中包括做同样事情的示例C#代码,由于在他在C#中使用的Lotus COM类中没有等效的Java convertToMIME API调用,他包括了从C#调用到C的代码,因此这将向您显示在C++中转换内容时需要使用哪些API。