如何通过代码跟踪通过smtp发送的电子邮件?

时间:2015-09-09 09:01:03

标签: c# smtp gmail smtpclient

我有一个应用程序,每天从C#程序发送2到3封电子邮件。

我正在使用gmail.com提供的电子邮件,例如我的电子邮件是abc@xxxx.com,因此我可以通过abc@xxxx.com登录gmail.com,(xxxx不是gmail,因为我使用的是谷歌邮件提供商)

因此,要发送电子邮件,我将传递SMTP用户名abc@xxxx.com和密码abc@xxxx.com。当我与@xxxx.com的其他用户发送电子邮件时,请def@xxxx.comxyz@gmail.com发送电子邮件。

我发送电子邮件后(通过C#程序)我试图通过www.gmail.com在abc@xxxx.com 2/3小时后登录,我找到了发送给xyz@gmail.com的电子邮件通过此帐户的SENT项目中的c#程序,即使我在def@xxxx.com的SENT项目中找不到。

所以我的问题是如何从www.gmail.com帐户跟踪此类电子邮件?

我的问题是 - 当我通过c#程序向aby@xxxx.com发送电子邮件至xyz@gmail.com时。 2/3小时后我去了www.gmail.com登录abc@xxxx.com但发送的电子邮件没有找到xyz@gmail.com的发送项目,同样我用def@xxxx.com登录但未找到发送邮件中的任何电子邮件:def@xxxx.com。我在哪里可以找到发送电子邮件在SENT ITMES Of whihc帐户?

public MailMessage msg;
SmtpClient objSMTP;
MessageStatus msgStatus;


objSMTP = new SmtpClient("x.x.x.x");
objSMTP.Credentials = new System.Net.NetworkCredential("abc@xxxx.com","pwd", true));
//objSMTP.EnableSsl = true;
MsgFrmID = "test@xxxx.com"

msg.From = "def@xxxx.com";

msg.To="xyz@gmail.com;"
msg.Subject = MsgSubject;
msg.Body = MsgData;
objSMTP.Send(msg);

1 个答案:

答案 0 :(得分:2)

如果你的邮件没有成功发送,肯定会引发一些异常。这样我们就可以通过将其封装在try...catch块中来跟踪它,如下所示

        try
        {
            SmtpClient Smtp_Server = new SmtpClient();
            MailMessage e_mail = new MailMessage();
          //code here for mail message and client configuration
            Smtp_Server.Send(e_mail);
            MessageBox.Show("mail send successfully");
        }
        catch (Exception)
        {

            MessageBox.Show("failed to send mail");
        }
相关问题