在Lotus Notes消息中插入内联图像

1 投票
2 回答
4362 浏览
提问于 2025-04-16 00:54

我之前用Lotus Notes和VBA、Python通过COM API发送邮件,方法是这样的:

我可以用Lotus Notes发送邮件吗?

我想问的是,怎么才能把一张图片直接插入到邮件正文里(而不是作为附件),而且是通过编程的方式实现(就像在编辑中选择“粘贴特殊”那样)?我在网上搜索了几次,但没有找到什么有效的解决办法。如果有用VBA或Python的解决方案,我会非常感激。

谢谢!

2 个回答

1

你可以使用DXLImporter这个类来实现这个功能,它可以通过VBA的COM接口来使用。DXL是一种特定于Notes的XML格式,你可以生成一个临时文件,然后把它导入到你的数据库里。这个博客里有示例代码,可能正好符合你的需求(这个代码可以导入富文本内容,包括内嵌图片,然后把这些富文本附加到邮件文档上)。

http://www.cubetoon.com/2008/notes-rich-text-manipulation-using-dxl/

你还可以考虑其他选项:

(1) 使用C或C++的API - 这会需要更多的努力,尤其是在处理富文本时,但基本上没有限制。(http://www.ibm.com/developerworks/lotus/library/capi-nd/index.html)

(2) 使用Genii的MIDAS工具包 (http://www.geniisoft.com) - 这个工具包扩展了Lotuscript的API,并且暴露了很多C API中的内容。

1

如果你不需要对Notes做什么特别的事情,比如使用特定的表单或者@函数之类的,那么你最好把消息构建成一个多部分的mime消息。

你需要设置会话,这样在你创建文档的时候,它就是mime格式的,然后你就可以根据需要设置你的消息,具体可以参考 NotesSession.ConvertMIME。接下来,你会用到 NotesMIMEEntityNotesMIMEHeader 这些对象来构建mime消息。

如果你对mime消息的构建方式不太熟悉,那可能会有点难,所以你可以先看看一些原始的mime消息,了解它们的样子。这样你就能搞清楚如何使用 NotesMIMEEntityNotesMIMEHeader 这些类的接口来构建消息了。

撰写回答