我使用Lotus Notes在我的ASP.NET和C#Web应用程序中发送电子邮件。它在调试模式下发送电子邮件但是如果我在本地IIS服务器上发布它不发送任何电子邮件。
Domino.NotesSession oNotesSession = null; ;
Domino.NotesDatabase oNotesDatabase = null;
Domino.NotesDocument oNotesDocument = null;
Domino.NotesDocument oNotesDocumentForOther = null;
object oItemValue = null;
bool flag = false;
try
{
String UserName = "";
try
{
oNotesSession = new Domino.NotesSession();
}
}
我在上面的行中得到以下错误
{System.OutOfMemoryException:检索COM类工厂 CLSID {29131539-2EED-1069-BF5D-00DD011186B7}组件失败到期 出现以下错误:8007000e。
答案 0 :(得分:1)
听起来Lotus Notes COM DLL或notes.ini文件不适用于运行IIS的帐户。您是否可以将IIS应用程序池更改为在您的帐户下运行(与用于访问Lotus Notes的帐户相同?)
或者,如果您只是发送电子邮件,是否有可能完全将Lotus Notes客户端从图片中删除,只需通过SMTP发送到Lotus Notes服务器(或您域中的任何其他SMTP服务器?)
答案 1 :(得分:0)
肯几乎肯定是正确的,但还有另外一件事要考虑。如果您打算在64位服务器上部署ASP项目,您应该知道Domino Interop COM类在64位代码中不可用,而IBM在Win64上的32位版本是not supported。可以通过安装Domino并手动为类注册DLL来使其适用于某些目的,但是类中的某些方法存在已知问题,而IBM并未计划修复它们。
所以我同意你编写代码来发送SMTP消息要好得多。