【发布时间】:2014-10-31 14:55:18
【问题描述】:
我似乎无法让它工作。我正在尝试制作一些东西来从桌面应用程序发送电子邮件,但我不断收到错误
System.dll 中出现“System.Net.Mail.SmtpException”类型的未处理异常
附加信息:SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应是: 5.7.0 必须首先发出 STARTTLS 命令。 l9sm2010572yhb.26 - gsmtp"
当使用 587 作为端口时,我明白了
System.dll 中发生了“System.Net.Mail.SmtpException”类型的第一次机会异常 System.dll 中出现“System.Net.Mail.SmtpException”类型的未处理异常 附加信息:操作已超时。
当使用 465 作为端口时。
这是代码。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net.Mail;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication15
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void genuineButton1_Click(object sender, EventArgs e)
{
Environment.Exit(0);
}
private void fusionButton1_Click(object sender, EventArgs e)
{
String Sender = textBox1.Text;
String Pass = textBox2.Text;
String Recepient = textBox3.Text;
String Subject = textBox4.Text;
String Body = richTextBox1.Text;
MailMessage message = new MailMessage();
message.From = new MailAddress(String.Copy(Sender));
message.To.Add(new MailAddress(String.Copy(Recepient)));
message.Subject = String.Copy(Subject);
message.Body = String.Copy(Body);
SmtpClient client = new SmtpClient("smtp.gmail.com");
client.Port = 465;
client.Send(message);
System.Net.NetworkCredential netCre = new System.Net.NetworkCredential(String.Copy(Sender), String.Copy(Pass));
client.UseDefaultCredentials = false;
client.EnableSsl = true;
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
}
}
有什么想法吗?
【问题讨论】:
标签: c# .net email smtp smtpclient