加载DLL时Lotus Notes API错误

时间:2010-09-30 09:16:58

标签: lotus-notes lotus-domino

我的客户端正在使用Lotus Notes 8.0.2。 我正在尝试使用以下VBScript来调用Notes API来发送电子邮件:

dim objNotesSession, objNotesDatabase, objNotesItem, objNotesRichTextItem

set objNotesSession = CreateObject("Lotus.NotesSession")
Call objNotesSession.Initialize("[password here]")
set objNotesDatabase = objNotesSession.GETDATABASE("[server here]", "[path to NSF here]")
set objNotesDocument = objNotesDatabase.CreateDocument
set objNotesItem = objNotesDocument.ReplaceItemValue("Form", "Memo")
set objNotesItem = objNotesDocument.ReplaceItemValue("Subject", "My Test Subject")
set objNotesRichTextItem = objNotesDocument.CreateRichTextItem("Body")
objNotesRichTextItem.AppendText "This is the body"
objNotesRichTextItem.EmbedObject 1454, "", "[path to attachment here]"
objNotesDocument.Send False, "[to address here]"

[cleanup code here]

在线上调用objNotesSession.Initialize我收到以下错误:“加载DLL时出错:初始化”

如果我注释掉该行,执行“set objNotesDatabase = objNotesSession.GETDATABASE”行,那么我收到错误“加载DLL时出错:GETDATABASE”

有人可以告诉我为什么会这样,我能做些什么来解决它?

谢谢, 肖恩。

2 个答案:

答案 0 :(得分:1)

Initialize方法是您登录并真正启动Notes会话的地方。因此,如果您注释掉该行,那么您并没有真正连接到Notes,因此您无法获得数据库的句柄。

回到初始化部分...我首先要确保一切都与Notes客户端安装完美配合。您应该能够打开Notes,登录并访问您打算使用的数据库。确保Notes目录和Data目录位于PATH环境变量中。确保您对Notes目录拥有足够的权限(可能授予Everyone完全访问权限以排除问题)。

最坏的情况是,尝试重新安装Notes或尝试在Notes工作正常的另一台机器上运行脚本。

答案 1 :(得分:0)

是的,事实证明,有一个Notes补丁应用于开发环境(所有工作都在运行),但未应用于实时环境。