我有代碼如下:發送郵件失敗(SmtpClient)
var smtpClient = new SmtpClient("my.mail.server");
smtpClient.Send(mailmessage);
但是發送方法調用失敗,出現「遠程機器積極拒絕」異常消息。我知道沒有防火牆阻塞因爲我可以telnet到相同的地址,並通過服務器手動處理Smtp協議。我知道代碼正在工作,因爲我可以連接到不同於默認端口的端口25.沒有軟件防火牆阻止傳輸。
當wiresharking我可以看到telnet'ing時設置的包,我可以看到,當我嘗試使用代碼時,沒有任何東西離開我的機器。所以這是一個安全的假設,問題出在我的機器上,並且與網絡無關。
基本上我可以連接到所有其他地方而不是.NET代碼,這導致我的問題可能是一個配置問題,但我缺乏什麼我需要配置不同的想法。任何建議可能的原因?
編輯: 在只有兩行發送郵件的項目中,我遇到同樣的問題。當試圖通過代碼建立TCP連接時,我得到了同樣的問題,所以我知道這與SMTP協議(或認證)無關,問題在於TCP套接字連接嘗試被阻止,但我仍然不知道爲什麼
如果您啓動一個新項目並只包含此代碼會發生什麼? – jim
你使用什麼SMTP服務器? –
@DaveG不知道它不在我的管理下,它被外包了 但我確信它與服務器無關,因爲TCP包永遠不會離開我的機器 –