Отправка электронной почты проблема в C # - PullRequest
1 голос
/ 14 февраля 2011

Я создал приложение C #, которое отправляет почту с использованием разных адресов электронной почты в gmail, но, несмотря на отправку сообщения с другого адреса электронной почты, я хочу отображать один конкретный указанный адрес электронной почты в заголовке «из» всякий раз, когда любой Пользователь получает электронное письмо, и я хочу получить ответ пользователя на указанный адрес электронной почты.

Могу ли я узнать, как я могу это сделать?

StringBuilder builder = new StringBuilder();
for (int j = i; j < (i + quantity) && j < EmailArr.Length; j++)
{
   //Add new sender email address
   builder.Append(EmailArr[j] + ",");
}

builder.Remove(builder.Length - 1, 1);

btnSend.Text = "Wait...";
this.Enabled = false;

MailMessage mailMsg = new MailMessage();
MailAddress mailAdd = new MailAddress(username);

mailMsg.From = mailAdd;
mailMsg.Bcc.Add(builder.ToString()); 
mailMsg.Subject = txtSubject.Text;
mailMsg.Body = txtBody.Text;
mailMsg.IsBodyHtml = chkHtmlBody.Checked;

if (System.IO.File.Exists(txtAttechments.Text))
{
    System.Net.Mail.Attachment attechment = new
    Attachment(txtAttechments.Text);
    mailMsg.Attachments.Add(attechment);
}

SmtpClient client = new SmtpClient();
client.Port = 587;
client.Host = "smtp.gmail.com";
client.EnableSsl = true;

client.Credentials = new System.Net.NetworkCredential(username, password);

client.Send(mailMsg);

Ответы [ 3 ]

0 голосов
/ 14 февраля 2011

Я не совсем понимаю, что вы хотите сделать, но вы также можете взглянуть на свойство Отправитель .

Однако, в зависимости от конкретной проблемы, это можетТакже будет проблема из-за того, как работает GMail.У меня есть воспоминания о необходимости что-то сделать для настройки, чтобы избавиться от какого-то текста «отправлено от имени», который был показан в поле from, но если это проблема, то этот вопрос, вероятно, лучше подходит для SuperUser.com .

0 голосов
/ 05 сентября 2013

Вы можете использовать этот код

using System.Net.Mail;
using System.Net;

var fromAddress = new MailAddress("from@gmail.com", "From Name");
var toAddress = new MailAddress("to@yahoo.com", "To Name");
const string fromPassword = "password";
const string subject = "test";
 const string body = "Hey now!!";

var smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
Credentials = new NetworkCredential(fromAddress.Address, fromPassword),
Timeout = 20000

};

  using (var message = new MailMessage(fromAddress, toAddress)
  {
   Subject = subject,
  Body = body
 })
 {
  smtp.Send(message);
 }
0 голосов
/ 14 февраля 2011

Просто введите адрес, который вы хотите. Обратите внимание, что некоторые почтовые серверы могут не разрешать вам устанавливать адрес отправителя, который не отражает действительную учетную запись на этом сервере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...