注释错误:无法在lotus notes中打开ID文件

时间:2016-05-18 06:57:30

标签: vb.net lotus-notes lotus-domino lotus

请有人帮助我。我使用Lotus Notes使用vb.net发送电子邮件,但是当我尝试运行时出现此错误。我已经添加了关于interop.lotus.dll和interop.Domino.dll的引用,但它仍然是同样的错误。请指教..

Line 115:        If dsEmail.Tables(0).Rows.Count > 0 Then
Line 116:            **s.Initialize("abcde!")** 'ERROR in THIS LINE




Protected Sub btnSend_ServerClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSend.ServerClick
    Dim s As New Domino.NotesSession
    Dim db As Domino.NotesDatabase
    Dim doc As Domino.NotesDocument
    Dim mimeEntity As Domino.NotesMIMEEntity
    Dim mimeChild As Domino.NotesMIMEEntity
    Dim header As Domino.NotesMIMEHeader
    Dim stream As Domino.NotesStream
    Dim sendTo As String
    Dim connectionString As String = "Data Source=[hide];User ID=[hide];initial Catalog=[hide];Password=[hide]"
    Dim objConn As New SqlConnection(connectionString)
    objConn.Open()
    Dim dsEmail = New DataSet
    Dim CommTaskA As SqlCommand
    Dim AdapTaskA As SqlDataAdapter
    CommTaskA = New SqlCommand("select EMAILBLASTCCID, rtrim(ltrim(EMAILADDR)) EMAILADDR, SUBJECTEMAIL, EMAILTEMPLATE from [hide] where [MESSAGE_TIME] is NULL", objConn)
    CommTaskA.CommandTimeout = 180
    AdapTaskA = New SqlDataAdapter
    AdapTaskA.SelectCommand = CommTaskA
    AdapTaskA.Fill(dsEmail)
    AdapTaskA.Dispose()
    CommTaskA.Dispose()
    objConn.Close()
    If dsEmail.Tables(0).Rows.Count > 0 Then
        s.Initialize("abcde!")
         db = s.GetDatabase("[hide]", "[hide].nsf", False)
        subjectEmail = dsEmail.Tables(0).Rows(0)(2).ToString
        For x As Integer = 0 To dsEmail.Tables(0).Rows.Count - 1
            doc = db.CreateDocument()
            sendTo = dsEmail.Tables(0).Rows(x)(1).ToString
            doc.ReplaceItemValue("SendTo", dsEmail.Tables(0).Rows(x)(1))
            doc.ReplaceItemValue("Subject", dsEmail.Tables(0).Rows(x)(2))

            mimeEntity = doc.CreateMIMEEntity
            mimeChild = mimeEntity.CreateChildEntity
            header = mimeEntity.GetNthHeader("Content-Type")
            header.SetHeaderVal("multipart/related")

            stream = s.CreateStream
            stream.WriteText("<img src='" & dsEmail.Tables(0).Rows(x)(3) & "'>")

            mimeChild.SetContentFromText(stream, "text/html", Domino.MIME_ENCODING.ENC_NONE)
            stream.Close()

            doc.Send(False)
            objConn.Open()
            CommTaskA = New SqlCommand("update [ZITA].[DEV].[EMAILBLASTCC_test] set [MESSAGE_TIME] ='" & DateTime.Now.ToString & "'  where rtrim(ltrim(EMAILADDR)) = '" & sendTo & "'", objConn)
            CommTaskA.CommandTimeout = 180
            CommTaskA.ExecuteNonQuery()
            CommTaskA.Dispose()
            objConn.Close()
        Next


    End If
End Sub

enter image description here

2 个答案:

答案 0 :(得分:0)

感谢您的回复......我找到了答案 问题是因为用户帐户 Lotus Notes和我的IIS管理器不同。 您必须使用同一帐户运行 Lotus Notes IBM IIS管理器中的应用程序池标识。 这个对我有用。谢谢

答案 1 :(得分:-1)

确保Windows环境变量PATH也指向C:\Users\adventina.nababan\AppData\Local\IBM\Notes\Data\

有关如何执行此操作的进一步说明,请查看问题“Adding directory to PATH Environment Variable in Windows”。