2015-12-24 37 views
0

我已經編寫了一個應用程序,用於在C#.NET(2.0)上發送電子郵件(需要在舊PC上使用)。所有在Windows 7上正常工作。當我開始使用Windows 10時,我遇到了這個問題。我收到錯誤:發送電子郵件SMTP C#.NET Windows 10

"Failure sending e-mail". I'm using the Gmal email box. SMTP-port: 587, SMTP server: smtp.gmail.com, SSL enabled.

爲什麼會出現此問題?我該如何解決它?謝謝!

UPD: 夥計!我查了原因。我的電腦名稱是'Дмитрий-PC'(我是俄羅斯人,名字中有俄文字母)。當我改變名字時一切都好(德米特里 - PC)。但請給我建議,我怎麼能在將來避免這些錯誤,因爲我國的很多人可能擁有帶rus字母的PC名稱。也許通過XML?我不知道。

+0

這可能不是與Windows 10,Gmail不允許你用發送電子郵件的smtp長時間。我認爲你的應用程序已被封鎖。嘗試使用[假smtp](https://nilhcem.github.io/FakeSMTP/)並測試它。 –

+0

您是否啓用了「低安全性」應用連接到Google帳戶? –

+0

7和10之間的Windows防火牆設置是否有所不同? – paul

回答

0

爲了通過SMTP從Google發送電子郵件,您需要啓用安全性較低的應用連接到Google帳戶。

檢查this文章瞭解如何啓用不太安全的應用程序。

如果這不起作用,您還需要驗證您的Windows 10計算機上是否安裝了.NET 2.0。您可以下載它here如果你沒有它

+0

我不明白這個設置將如何改變windows 7&10 – paul

+0

有效點之間的行爲。可能是在Windows 10中,他沒有'.NET 2.0' –

+0

夥計們!我查了原因。我的電腦名稱是'Дмитрий-PC'(我是俄羅斯人,名字中有俄文字母)。當我改變名字時一切都好(德米特里 - PC)。但請給我建議,我怎麼能在將來避免這些錯誤,因爲我國的很多人可能擁有帶rus字母的PC名稱。也許通過XML?我不知道。 –

1

我以XML在app.config解決:

<configuration> 
    <system.net> 
     <mailSettings> 
     <smtp> 
      <network clientDomain="name"/> 
     </smtp> 
     </mailSettings> 
    </system.net> 
    <startup> 
    <supportedRuntime version="v2.0.50727"/> 
    </startup> 
</configuration>