簡體   English   中英

C# - SMTP Gmail在發送時掛起。 第一次工作

[英]C# - SMTP Gmail hangs on send. Worked the first time

我目前正在開發一個應用程序,從服務器下載文件,將其附加到電子郵件並將其發送到輸入的gmail-address。 我第一次嘗試它,它工作正常。 當我第二次嘗試時,懸掛開始了,從那時起它就沒有用了。

這是我的代碼:

SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
                    MailMessage mail = new MailMessage();
                    mail.From = new MailAddress(fran);
                    mail.To.Add(till);
                    mail.Subject = amne;
                    mail.Body = text;

                    System.Net.Mail.Attachment attachment;
                    attachment = new System.Net.Mail.Attachment("file.txt");
                    mail.Attachments.Add(attachment);

                    SmtpServer.Port = 465;
                    SmtpServer.Timeout = 30000;
                    SmtpServer.DeliveryMethod = SmtpDeliveryMethod.Network;
                    SmtpServer.UseDefaultCredentials = false;
                    SmtpServer.Credentials = new System.Net.NetworkCredential(user, pw);
                    SmtpServer.EnableSsl = true;

                    SmtpServer.Send(mail);
                    SmtpServer.Dispose();
                    mail.Dispose();

我嘗試過端口587,465和25以及在Windows防火牆中打開它們。 我試過禁用Avast! AntiVirus,以管理員身份運行並重新啟動計算機。 只運行一次讓我覺得它有某種緩存問題,但是什么呢?

我感謝所有的提示和建議,火了!

先謝謝Fredrik

您的代碼有效,問題是您使用的是錯誤的端口。 您必須使用端口587

我正在嘗試使用Powerbuilder發送smtp郵件,並遇到了同樣的懸掛情況。 不確定它是否對C ++平台有幫助,但我解決問題的方法是放置一個較新版本的cl32.dll(當然,談論Windows)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM