传输无法连接到服务器 - CDO.Message - VB.NET

时间:2012-06-19 16:26:58

标签: vb.net smtp cdo.message

我在服务器上运行了一个VB.net应用程序,它将每天发送近200个电子邮件。以下是我的编码:

Dim objNewMail = CreateObject("CDO.Message")
                  objNewMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
                    objNewMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost"
                    objNewMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
                    objNewMail.Configuration.Fields.Update()

                    objNewMail.From = mailFrom
                    objNewMail.To = mailTO
                    objNewMail.CC = mailCC
                    objNewMail.bcc = mailBCC

                    objNewMail.Subject = mailSubject
                    objNewMail.HTMLBody = content
                    objNewMail.Send()

                    objNewMail = Nothing

以上代码在循环内运行。上面的代码运行良好,没有任何问题。但是每月一次或两次,我收到以下错误消息并且应用程序停止。

System.Runtime.InteropServices.COMException(0x80040213):传输无法连接到服务器。

任何人都可以帮我解决这个问题,或者我也可以采取任何其他更好和更先进的方法。

1 个答案:

答案 0 :(得分:1)

您可能希望将.Send()调用包装在Try ... Catch中,如果失败则在几秒钟后重试。

CDO似乎已被弃用,转而支持System.Net.Mail。有一个网站在www.systemnetmail.com/有一个全面的常见问题解答,虽然我会在事件日志中查找类似的偶然错误。

是否还有其他错误,例如服务器刚刚重新启动?