0
我編寫了一個簡單的Windows應用程序,用於向我的郵件列表的成員發送一些電子郵件。C#SMTP電子郵件程序未正確使用FROM地址
該程序使用我的Gmail帳戶通過SMTP發送。我不希望我的客戶擁有該帳戶,但我希望他們看到公司電子郵件。
我寄給自己一些電子郵件來測試,但我收到的電子郵件顯示從我登錄在谷歌的電子郵件帳戶發送。有任何想法嗎?
郵件功能:
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);
}
}
這似乎是正確的,但VS告訴我,我做到這一點是不可編譯的。 –
msg.Sender = txtFrom.Text; –
我已經做了這個改變,仍然不起作用。我將更改問題以包含更新的代碼塊並添加結果和應用程序的圖像 –