gpt4 book ai didi

c# - 是否可以在不在 SMTP 服务器上进行身份验证的情况下发送电子邮件?

转载 作者:太空狗 更新时间:2023-10-30 01:22:56 24 4
gpt4 key购买 nike

我正在创建简单的电子邮件发送应用程序。在我的应用程序中,每当我发送电子邮件时,我都必须输入我的电子邮件地址或密码,但我不想使用密码,只想发送电子邮件。

所以:

我可以使用 C#/.net 应用程序不使用密码发送电子邮件吗?

这是我的代码:

try
{
// setup mail message
MailMessage message = new MailMessage();
message.From = new MailAddress(textBox1.Text);
message.To.Add(new MailAddress(textBox2.Text));
message.Subject = textBox3.Text;
message.Body = richTextBox1.Text;

// setup mail client
SmtpClient mailClient = new SmtpClient("smtp.gmail.com");
mailClient.Credentials = new NetworkCredential(textBox1.Text,"password");

// send message
mailClient.Send(message);

MessageBox.Show("Sent");
}
catch(Exception)
{
MessageBox.Show("Error");
}

最佳答案

一般来说,你当然可以。在您的具体示例代码中,您使用的 Gmail 不允许匿名发送。

来自 their references :

smtp.gmail.com (use authentication)
Use Authentication: Yes
Port forTLS/STARTTLS: 587
Port for SSL: 465

关于您的 catch 子句的附加评论:

在我看来,您严重滥用了异常(exception)的想法。更好的方法是这样的:

catch(Exception x)
{
var s = x.Message;
if ( x.InnerException!=null )
{
s += Environment.NewLine + x.InnerException.Message;
}

MessageBox.Show(s);
}

关于c# - 是否可以在不在 SMTP 服务器上进行身份验证的情况下发送电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12490689/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com