是否可以在 gmail.com 帐户中找到从 C# 以编程方式发送的电子邮件?
Posted
技术标签:
【中文标题】是否可以在 gmail.com 帐户中找到从 C# 以编程方式发送的电子邮件?【英文标题】:Is email message sent from programmatically from C# will be found in gmail.com account? 【发布时间】:2015-12-03 23:11:21 【问题描述】:我正在使用 gmail 从 C# 程序发送电子邮件,我的问题是如果通过浏览器登录到 gmail.com,在已发送项目下找到的电子邮件? 如果我从 c# 程序发送了一封电子邮件并且该电子邮件失败(退回)然后如果我通过浏览器登录到 gmail.com 是否找到故障转移通知?
如果是,那么是否有任何其他设置可以接收?我想在登录时通过浏览器在 gmail.com 中显示。
【问题讨论】:
你为什么不试试看呢? 唯一可以确定的是,如果您在一个实例中发送过多,gmail 会阻止外部应用程序,然后您必须取消阻止它们 @elasticrash- 我每天只从 c# 程序发送 2 或 3 封电子邮件,仅此而已。我的目标是它也可以通过浏览器从 gmai.com 查看。有什么想法吗? 如果您的问题是“是否从 c# 应用程序发送电子邮件”出现在发送邮件中。那么答案是肯定的 @BenRobinson- 我试过了,但是在地址字段中找不到它,而且我没有 smtp 邮件用户访问权限。所以无法检查,你能帮忙吗? 【参考方案1】:我不太明白你在问什么,但如果你只需要通过 gmail 发送电子邮件的代码,那就很简单了
void SendMail_Click(object sender, EventArgs e)
var email = new Dto.IEmail();
if (EmailBody.Text == string.Empty && EmailSubject.Text == string.Empty)
XtraMessageBox.Show("please fill email body and subject");
return;
email.Body = EmailBody.Text;
email.Subject = EmailSubject.Text;
email.EmailAddress = "email@gmail.com";
email.ToAddress = "email@gmail.com";
try
MailMessage message = new MailMessage();
SmtpClient smtp = new SmtpClient();
message.From = new MailAddress(email.EmailAddress);
message.To.Add(new MailAddress(email.ToAddress));
message.Subject = email.Subject;
message.Body = email.Body + "\n From user " + GlobalClass.UserLogin.USERNAME + "\n with body: " + _reportedfile;
smtp.Port = 587;
smtp.Host = "smtp.gmail.com";
smtp.EnableSsl = true;
smtp.UseDefaultCredentials = false;
smtp.Credentials = new NetworkCredential(email.EmailAddress, "gmailpassword");
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.Send(message);
catch (Exception ex)
XtraMessageBox.Show("err: " + ex.Message);
【讨论】:
我能理解并按照您的建议工作。但我的问题是当我尝试 smtp.Credentials 时,例如 ("xyz@gmail.com","pwd") 和 MailMessage message.From ="abc@gmail.com" 和 TO-"aaa@gmail.com",在此案例电子邮件已成功发送并由预期收件人收到,但是当我登录 gmail.com 时,我无法在“xyz@gmail.com”的已发送项目或“abc@gmail.com”中找到此电子邮件”。那么我在哪里可以在 SENT 项目中找到这封发送电子邮件?在哪个帐户中记录了 SENT 项目? 我用了很多次,发送的邮件确实在发送文件夹中。但是您必须激活 Gmail 才能接受自定义的第 3 方自定义应用程序,否则它可能会完全拒绝该电子邮件。 正确,但电子邮件已成功发送和接收。但只关心 gmail 在哪里记录发送的项目,是在 abc@gmail.com 还是在 xyz@gmail.com?以上是关于是否可以在 gmail.com 帐户中找到从 C# 以编程方式发送的电子邮件?的主要内容,如果未能解决你的问题,请参考以下文章
无法使用smtp.gmail.com从一个特定的Google帐户发送邮件
c# SmtpClient 类无法使用 gmail 发送电子邮件