5年以上問題なく動作しているアプリケーションがあります。今朝、特定のGmailアカウントを使用してメールを送信できなくなりました。受け取る例外は次のとおりです。トランスポート接続からデータを読み取れません:net_io_connectionclosed。別のアカウントの資格情報を使用すると正常に機能します。アカウントの認証情報に変更はなく、Gmailインターフェースを使用してアカウントからメールを送信できます。私はGoogleに連絡しましたが、彼らの返答は、アカウントは問題ないように見える、それはあなたのアプリケーションでなければなりません...私の返答、アプリケーションは変更されておらず、他の資格情報を使用しています。私の関連コードは以下です、何かアイデアはありますか?
try
{
SmtpClient smtpClient = new SmtpClient();
using (MailMessage message = new MailMessage())
{
message.From = new MailAddress(Program.EMAIL_SENDER_ADDRESS, "SENDER NAME");
message.To.Add(new MailAddress(Program.ERROR_RECIPIENT));
message.Subject = callingClass + " ERROR: " + subject;
message.IsBodyHtml = true;
message.Body = body;
smtpClient.Host = "smtp.gmail.com";
smtpClient.Port = 587;
smtpClient.EnableSsl = true;
smtpClient.Credentials = new System.Net.NetworkCredential(Program.EMAIL_SENDER_ADDRESS, Program.EMAIL_SENDER_PASSWORD);
smtpClient.Send(message);
smtpClient.ServicePoint.CloseConnectionGroup(smtpClient.ServicePoint.ConnectionName);
}
}
catch (Exception x)
{
//handle exception
}
更新-Googleに電話してから約30分後に、魔法のように再び働き始めました。アプリ自体が修正されたと思いますか?!?!
少し前にGmailでも同様の問題がありました。 Googleがメールアプリのセキュリティを強化したため、これが解決策となりました(2016年9月時点で機能)。
これを使う Google MyAccount Page