我正在处理一个任务,在该任务中,我的.net应用程序应该使用Dominos.dll使用Lotus Notes客户端(不是SMTP)使用.NET发送电子邮件。我也可以发送邮件。但是,当我关闭我的Lotus Notes邮件客户端并尝试运行不传递邮件的应用程序时,问题就出现了。原因,我认为他们被存储在“发送邮件”中。再次当我通过输入我的用户名和密码重新打开我的Lotus Notes客户端时,那么“发送邮件”中的邮件已经发送。 她的一位绅士建议我,我连接到我的本地副本发送电子邮件,并告诉我将我的数据库名称更改为服务器数据库文件。我改变了连接到服务器现在我得到这个错误“数据库打开失败。”有趣的是,如果我使用“names.nsf”文件,我没有得到例外。但是,如果我更改为我的“username.nsf”它无法连接,并给我这个错误。但是,如果我使用“names.nsf”文件,当我关闭莲花笔记并运行我的应用程序时,邮件未收到。使用.NET通过莲花笔记发送电子邮件时发生“数据库打开失败”异常
以下是我用来发送电子邮件的代码。
oNotesSession = new NotesSession();
oNotesSession.Initialize("******"); //password
oNotesDatabase = oNotesSession.GetDatabase("servername", "names.nsf", false);
if (!oNotesDatabase.IsOpen)
oNotesDatabase.Open();
oNotesDocument.ReplaceItemValue("Form", "Memo");
oNotesDocument.ReplaceItemValue("SendTo", strToAddress);
oNotesDocument.ReplaceItemValue("body", mData.Body);
oNotesDocument.ReplaceItemValue("Subject", mData.Subject);
oNotesDocument.ReplaceItemValue("$KeepPrivate", "1");
oNotesDocument.ReplaceItemValue("postDate", DateTime.Now.ToShortDateString());
oItemValue = oNotesDocument.GetItemValue("SendTo");
oNotesDocument.Send(false, ref oItemValue);