You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C# WinForms应用使用Gmail应用密码发送邮件失败求助

解决Gmail应用密码发送邮件时连接关闭的问题

我来帮你搞定这个问题!你已经做了开启双重认证、创建应用密码这些关键步骤,但还是遇到了连接关闭的错误,咱们从几个方向排查:

1. 先确认应用密码的正确性

应用密码是16位无空格的字符串,创建的时候要注意选择对应的应用类型(比如「邮件」或者「其他(自定义名称)」),复制的时候别不小心带了空格或者换行。如果不确定,建议重新生成一个新的应用密码再试。

2. 检查SmtpClient的配置细节

你的代码看起来基本没问题,但有个细节可以再确认:UseDefaultCredentials 一定要在设置 Credentials 之前设为 false(你的代码顺序是对的,但如果顺序反了会导致认证失效)。另外,可以尝试添加一行代码强制启用TLS:

Smtp.EnableSsl = true;
Smtp.TargetName = "STARTTLS/smtp.gmail.com"; // 新增这行

3. 排查网络/防火墙拦截

错误提示「连接被关闭」,很可能是本地防火墙、杀毒软件或者公司网络拦截了587端口。你可以尝试用命令行测试连通性:

telnet smtp.gmail.com 587

如果能连通会显示类似「220 smtp.gmail.com ESMTP」的信息;如果不通,就得调整防火墙规则或者换个网络试试。

4. 改用更稳定的MailKit库(推荐)

System.Net.Mail.SmtpClient 在.NET中已经被标记为过时,MailKit是更现代、更可靠的邮件库,对Gmail的支持更好。这里给你一个用MailKit发送邮件的示例代码:

using MailKit.Net.Smtp;
using MimeKit;

var message = new MimeMessage();
message.From.Add(new MailboxAddress("Sender", "...@gmail.com"));
message.To.Add(new MailboxAddress("Recipient", "...@gmail.com"));
message.Subject = "test";

message.Body = new TextPart("plain")
{
    Text = "这是测试邮件内容"
};

using (var client = new SmtpClient())
{
    client.Connect("smtp.gmail.com", 587, true);
    client.Authenticate("...@gmail.com", "你的应用密码");
    client.Send(message);
    client.Disconnect(true);
}

使用这个库需要先通过NuGet安装 MailKit 包。

另外补充:如果你的账号开启了「高级保护程序」,应用密码是无法使用的,这种情况就得改用OAuth2认证,但一般普通账号不会开启这个。

你遇到的错误信息:
System.Net.Mail.SmtpException: Failure sending mail. ---> System.IO.IOException: Unable to read data from the transport connection: The connection was closed.

你的原代码:

Smtp = new SmtpClient(); 
Smtp.UseDefaultCredentials = false; 
var NetworkCredentials = new NetworkCredential() { UserName = "...@gmail.com", Password = "..." }; 
Smtp.Port = 587; 
Smtp.EnableSsl = true; 
Smtp.Host = "smtp.gmail.com"; 
Smtp.Credentials = NetworkCredentials; 
MailMessage msg = new MailMessage(); 
msg.From = new MailAddress("...@gmail.com"); 
msg.To.Add("...@gmail.com"); 
msg.Subject = "test"; 
Smtp.Send(msg);

内容的提问来源于stack exchange,提问作者Maria

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 23:12:44