CreateObject(" Lotus.NotesSession")最终因无法创建ActiveX组件而失败

时间:2014-10-16 11:05:31

标签: vb.net lotus-domino

我有以下VB代码与Lotus Notes交互:

Dim objNotesSession As Object = Nothing ' Domino.NotesSession = Nothing
Dim objNotesDatabase As Object = Nothing 'Domino.NotesDatabase = Nothing
Dim objNotesDocument As Object = Nothing 'Domino.NotesDocument = Nothing
Dim objNotesRichTextItem As Object = Nothing 'Domino.NotesRichTextItem = Nothing
Dim objNotesItem As Object = Nothing 'Domino.NotesItem = Nothing

Try
    objNotesSession = CreateObject("Lotus.NotesSession") 'New Domino.NotesSession
    objNotesSession.Initialize(Password)
    objNotesDatabase = objNotesSession.GetDatabase(Server, Database)
    objNotesDocument = objNotesDatabase.CreateDocument
    'Code here to send email

Finally
    If Not objNotesItem Is Nothing Then
        objNotesItem = Nothing
    End If
    If Not objNotesRichTextItem Is Nothing Then
        objNotesRichTextItem = Nothing
    End If
    If Not objNotesDocument Is Nothing Then
        objNotesDocument = Nothing
    End If
    If Not objNotesDatabase Is Nothing Then
        objNotesDatabase = Nothing
    End If
    If Not objNotesSession Is Nothing Then
        objNotesSession = Nothing
    End If
End Try

此代码在一个方法中被重复调用,用于许多必须发送的电子邮件,这些电子邮件可以运行很长时间(几十封电子邮件),但最终,CreateObject行失败并出现异常:

System.Exception: Cannot create ActiveX component.

对该方法的后续调用失败:

System.OutOfMemoryException: Retrieving the COM class factory for component with CLSID {29131539-2EED-1069-BF5D-00DD011186B7} failed due to the following error: 8007000e.

我觉得在我的Last bock中我应该做的不仅仅是将变量设置为Nothing以便进行适当的清理,但是关于这个的Notes / Domino文档非常不清楚。

请指教?

0 个答案:

没有答案