从邮件服务器读取消息时,它显示对象引用未设置为对象实例发生错误

时间:2018-12-22 06:45:25

标签: asp.net vb.net

我正在使用OpenPop dll使用相应的服务器配置从邮件服务器获取邮件。通过使用此方法,我在解析邮件中的消息时遇到了一些问题。这是我使用的代码:

Do While (i >= 1)
    Dim message As Message = pop3Client.GetMessage(i)

    ' If Format(Convert.ToDateTime(message.Headers.DateSent), "dd/MMM/yyyy") < Format(fromdate.Text, "dd/MMM/yyyy") Then Exit Do
    dtMessages.Rows.Add()
    ' MsgBox(message.RawMessage.ToString)
    dtMessages.Rows((dtMessages.Rows.Count - 1))("MessageNumber") = i
    dtMessages.Rows((dtMessages.Rows.Count - 1))("From") = message.Headers.From.Address
    dtMessages.Rows((dtMessages.Rows.Count - 1))("Subject") = message.Headers.Subject
    dtMessages.Rows((dtMessages.Rows.Count - 1))("DateSent") = message.Headers.DateSent

    Dim messagePart As MessagePart = message.MessagePart.MessageParts(0)

    dtMessages.Rows((dtMessages.Rows.Count - 1))("Message") = MessagePart.BodyEncoding.GetString(MessagePart.Body)
    counter = counter + 1

    i = i - 1
    '  Exit Sub
    If counter = 25 Then
        Exit Do
    End If
Loop

虽然我正在使用此do事件正确地从第一封邮件中获取消息区域,但循环工作正常。增量发生后,循环将导致错误“对象引用未设置为对象的实例”。

系统显示的建议是添加“ New” 关键字,但我不知道在哪里使用它。

0 个答案:

没有答案