Windows için posta listemdeki üyelere bazı e-postalar göndermek için basit bir uygulama yazdım.C# SMTP e-posta programı doğru bir şekilde FROM adresi kullanmıyor
Program SMTP aracılığıyla göndermek için gmail hesabımı kullanır. Müşterilerimin bu hesaba sahip olmasını istemiyorum, ancak bunun yerine kurumsal e-postayı görmelerini istiyorum.
Test etmek için kendime bazı e-posta gönderdim, ancak aldığım e-postalar google'da giriş yaptım e-posta hesabından gönderildi gösteriliyor. Herhangi bir fikir?
posta işlevi:
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);
}
}
Bu doğru gibi görünüyor, ama VS bana bunu yapma şeklini anlatıyor .. –
msg.Sender = txtFrom.Text; –
Bu değişikliği yaptım, hala çalışmıyor. Güncellenmiş kod bloğunu içerecek ve sonuç ile uygulamanın görüntülerini ekleyeceğim. –