繁体   English   中英

C#SMTP电子邮件程序未正确使用“发件人”地址

[英]C# SMTP email program is not using FROM address correctly

我为Windows编写了一个简单的应用程序,用于向邮件列表的成员发送一些电子邮件。

该程序使用我的Gmail帐户通过SMTP发送。 我不希望我的客户拥有该帐户,但是我希望他们看到公司电子邮件。

我向自己发送了一些电子邮件进行测试,但是我正在接收的电子邮件显示了我已经在Google登录时使用的电子邮件帐户发送的电子邮件。 有任何想法吗?

邮件功能:

    public void SendEmail()
    {
        //smtp host and port for gmail
        string host = txtHost.Text;
        int port;
        if (!Int32.TryParse(txtPort.Text, out port))
        {
            MessageBox.Show("Please enter a valid port number.");
            return;
        }          

        //compose email
        MailMessage msg = new MailMessage();
        msg.Sender = new MailAddress(txtFrom.Text, txtFrom.Text);
        msg.From = new MailAddress(txtFrom.Text, txtFrom.Text);

        msg.To.Add(txtTo.Text);

        msg.Subject = txtSubject.Text;
        msg.Body = rTxtMessage.Text;

        msg.IsBodyHtml = chkHtml.Checked;


        //msg.From = new MailAddress(txtFrom.Text, txtFrom.Text);

        //create smtp client
        SmtpClient smtp = new SmtpClient(host, port);

        //TODO: Move constants to the NetworkCredentials call
        string username = SMTP_USERNAME;
        string password = SMTP_PASSWORD;

        smtp.UseDefaultCredentials = false;
        smtp.Credentials = new NetworkCredential(username, password);
        smtp.EnableSsl = true;

        try
        {
            //Send email
            smtp.Send(msg);
        }
        catch (Exception exp)
        {
            //Log if any errors occur
            MessageBox.Show(exp.Message);
        }
    }

以及应用程序和结果截图: 应用程序正在运行 我的收件箱里有什么

您应该设置:

msg.Sender

到您的公司地址。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM