2012-06-19 102 views
0

我有一個VB.net應用程序運行在服務器上,將每天發送電子郵件接近200。以下是我的編碼:傳輸失敗連接到服務器 - CDO.Message - VB.NET

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

您可能想要將.Send()調用包裝在Try ... Catch中,並在幾秒鐘後重試(如果失敗)。

CDO似乎已被棄用,以支持System.Net.Mail。雖然我會在事件日誌中尋找類似的偶然性錯誤,但在www.systemnetmail.com/有一個全面的常見問題解答站點。

是否還有其他重合錯誤,例如服務器剛剛重新啓動?