メールを送信するための C# Winforms で簡単なプログラムを作成しました。私のコードを以下に示します。
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public MailMessage rtnMail()
{
string to = txt_To.Text;
string from = txt_From.Text;
string subject = txt_Subject.Text;
string body = txt_Body.Text;
MailMessage message = new MailMessage(from, to, subject, body);
return message;
}
//Button click event
private void btn_Send_Click(object sender, EventArgs e)
{
SmtpClient smtp = new SmtpClient("smtp.gmail.com");
smtp.Port = 587;
smtp.Credentials = new System.Net.NetworkCredential("myanotherid@gmail.com", "password");
smtp.EnableSsl = true;
smtp.Timeout = 500000;
smtp.Send(this.rtnMail());
}
}
このコードを実行し、(宛先、送信元、本文、件名) のようなテキストボックスにすべての値を入力し、[送信] ボタンをクリックすると、アドレスにメールが届きます。
txt_Toという名前のテキストボックスに記載されています(これは私の受信者のGmailアカウントIDです)。しかし、どのアドレス(電子メールID)を見るたびに、Microsoftでこの電子メールを受け取りましたか
Outlook(Gmailのレシピイントアカウント用に設定しました)、行の最初の引数として言及された電子メールアドレスからこの電子メールを受け取ったと常に言います
以下のコード、
smtp.Credentials = new System.Net.NetworkCredential("myanotherid@gmail.com", "password");
私の質問は、私が電子メールを受信する電子メールアドレス(私のOutlook gmailで)が私が入れたものであるべきだと思っているので、私は何か間違ったことをしていますか?
「myanotherid@gmail.com」アドレスからではなく、txt_From という名前の TextBox。
回避策はありますか、またはそれに代わるものはありますか。