26

次のコードを使用して、gmail アカウントを使用して Web アプリケーションからメールを送信しました。私の質問は、送信者アドレスを元の送信者 (gmail) アドレス以外の別のアドレスに変更できますか? 私のコードは次のとおりです。

System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
System.Net.NetworkCredential cred = new System.Net.NetworkCredential("sample@gmail.com", "*******");

私はいつも からメールを受け取るので、何をしても無駄sample@gmail.comです。それを変更することは可能ですか?

に変更しまし たが、新しい「差出人」アドレスからではなく、mail.From = new System.Net.Mail.MailAddress("sample@yahoo.com");差出人アドレスのメールを受け取りました。sample@gmail.comgmail smtp は送信元アドレスを元の資格情報で上書きすると思います。

4

5 に答える 5

40

これが解決策です:

  1. 上記のコードを使用して mail.From = new MailAddress(アドレス, 表示名) を設定します
  2. Gmail で、[メール設定] >> [アカウントとインポート] に移動します。
  3. 「Send Mail As」に送信者として使用するメールアカウントを追加します。(エイリアスとしてチェック)

これは私のために働く

于 2012-01-04T13:05:58.993 に答える
35

Gmail では、FROM を Gmail アカウント以外のものに変更することはできません。

何を使うかは関係ありません。彼らはそれを中継する前に上書きします。これにより、スパム/なりすましが防止されます。

于 2010-10-06T13:21:43.200 に答える
5

はい、 MailMessageのFromプロパティを使用するだけです

例えば。

mail.From = "newemail@email.com";

編集: また、C# で gmail 経由でメールを送信する方法の詳細については、この投稿を参照してください。

Gmail を介して .NET で電子メールを送信する

編集:これは一般的にメールで機能しますが、送信前にGoogleが上書きするため、gmailでは機能しないようです(@Dave wantaの回答を参照)

于 2010-10-06T10:34:31.320 に答える
2

送信者の数が限られている場合は、@philip が提案したように実行できます。たとえばcustomerservice@example.com、 、simon@example.comphilip@example.comまたは さえある場合がありますalias@example.com。それらが実際のgmail.comWeb サイトで承認された送信者である限り、それらから送信できます。

Gmail.com : 別のアドレスからメールを送信する

任意のユーザーから送信することが予想される場合 (ユーザーが電子メールを入力する Web サイトのカスタマー サービス フォームなど、直接電子メールを送信したくない場合) にできる最善の方法は次のとおりです。

        msg.ReplyToList.Add(new System.Net.Mail.MailAddress(email, friendlyName));

制御された環境にいる場合、これはうまく機能しますが、reply-to が指定されている場合でも、いくつかの電子メール クライアントが送信元アドレスに送信するのを見たことに注意してください (どれかはわかりません)。

于 2013-07-07T20:46:00.007 に答える