C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.15211 の関連記事表示

<< 0 >>
■15211  SmtpMailクラスでメールが送信できない
□投稿者/ natural -(2008/03/07(Fri) 02:25:16)

    分類:[C#] 

    たびたびお世話になっています。
    naturalです。

    VisualStudio2003のC#で、メール送信を行うWindowsサービスを作成しています。
    (.net Framework 1.1です。2は使用できません)

    SmtpMailクラス(System.Web.Mail)を使用し、
    メールを送信するテストを行っているのですが、以下の例外が発生してしまいます。
    ++++++
    System.Web.HttpException: 'CDO.Message' オブジェクトにアクセスできませんでした。
    ---> System.Reflection.Targ etInvocationException: 呼び出しのターゲットが例外をスローしました。
    ---> System.Runtime.InteropServices.COMException (0x8004020E): The server rejected the sender address. The server response was: 521 mail not accepted from this domain --- 内部例外スタック トレースの終わり ---
    at System.Run timeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedP arameters)
    at System.RuntimeType.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier [] modifiers, CultureInfo culture, String[] namedParameters)
    at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Obje ct target, Object[] args)
    at System.Web.Mail.LateBoundAccessHelper.CallMethod(Type type, Object obj, String methodName, Object[] args)
    at Syst em.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) --- 内部例外スタック トレースの終わり ---
    at System .Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args)
    at System.Web.Mail.CdoSysHelper.Send(MailMessage message)
    at System.Web.Mail.SmtpMail.Send(MailMessage message)
    at BusinessTripBoardService.MailSender3.CreateAndSendMail(String[] record) in c:\cvs\us erside\businesstripboard\src\program\businesstripboardservice\mailsender3.cs:line 371
    at BusinessTripBoardService.MailSender3.SendFlashReportMail( ArrayList mailDataArray) in c:\cvs\userside\businesstripboard\src\program\businesstripboardservice\mailsender3.cs:line 311
    at BusinessTripBoardSer vice.MailSender3.SendFlashReportMail() in c:\cvs\userside\businesstripboard\src\program\businesstripboardservice\mailsender3.cs:line 64
    at Busines sTripBoardService.BusinessTripBoardService.OnFlashReportMailEvent(Object source, ElapsedEventArgs e) in c:\cvs\userside\businesstripboard\src\program\ businesstripboardservice\businesstripboardservice.cs:line 776
    +++++++
    尚、送信に使用しているメールアドレス・SMTPサーバは、
    Yahooメールのものを使用しています。
    テストで、メールクライアントソフト(EDMAX)に設定を行い、
    メール送信をしてみたところ送信できているので、
    SMTPサーバ・メールアドレス自体には特に問題はないと思われます。

    送信できない理由・修正方法について、お分かりになる方がいらっしゃいましたら、
    教えていただけませんでしょうか?

    よろしくお願いいたします。
親記事 /過去ログ31より / 関連記事表示
削除チェック/

■15212  Re[1]: SmtpMailクラスでメールが送信できない
□投稿者/ やじゅ -(2008/03/07(Fri) 04:22:11)
>
    2008/03/07(Fri) 04:22:45 編集(投稿者)

    No15211 (natural さん) に返信
    > ---> System.Runtime.InteropServices.COMException (0x8004020E): The server rejected the sender address.
    > 送信できない理由・修正方法について、お分かりになる方がいらっしゃいましたら、
    > 教えていただけませんでしょうか?
    >

    エラーを訳す。
    COMException (0x8004020E): サーバーによって送信者アドレスが拒否されました。
記事No.15211 のレス /過去ログ31より / 関連記事表示
削除チェック/

■15214  Re[1]: SmtpMailクラスでメールが送信できない
□投稿者/ シャノン -(2008/03/07(Fri) 09:52:54)
    No15211 (natural さん) に返信
    > 尚、送信に使用しているメールアドレス・SMTPサーバは、
    > Yahooメールのものを使用しています。
    > テストで、メールクライアントソフト(EDMAX)に設定を行い、
    > メール送信をしてみたところ送信できているので、
    > SMTPサーバ・メールアドレス自体には特に問題はないと思われます。

    Outbound Port25 Blocking によって拒否されているように見受けられます。
    本当に EDMAX と設定が同じになっているでしょうか?
記事No.15211 のレス /過去ログ31より / 関連記事表示
削除チェック/

■15216  Re[2]: SmtpMailクラスでメールが送信できない
□投稿者/ シャノン -(2008/03/07(Fri) 10:29:46)
    No15214 (シャノン さん) に返信
    > ■No15211 (natural さん) に返信
    >>尚、送信に使用しているメールアドレス・SMTPサーバは、
    >>Yahooメールのものを使用しています。
    >>テストで、メールクライアントソフト(EDMAX)に設定を行い、
    >>メール送信をしてみたところ送信できているので、
    >>SMTPサーバ・メールアドレス自体には特に問題はないと思われます。
    >
    > Outbound Port25 Blocking によって拒否されているように見受けられます。
    > 本当に EDMAX と設定が同じになっているでしょうか?

    例えば、ポートは587になってます?
    http://dobon.net/vb/dotnet/internet/smtpport.html
記事No.15211 のレス /過去ログ31より / 関連記事表示
削除チェック/

■15232  Re[3]: SmtpMailクラスでメールが送信できない
□投稿者/ natural -(2008/03/07(Fri) 20:23:29)
    みなさん、アドバイスありがとうございます。
    お礼、及び、報告が遅れまして、すみませんでした。

    ■やじゅ様
    >COMException (0x8004020E): サーバーによって送信者アドレスが拒否されました。
    まさにこれでした。
    が、設定したアドレスが間違っていなかった(コピペしたため)ので、
    悩みました。

    ■シャノン様
    回答ありがとうございました。
    EDMAXと同じ設定(コピペしたので間違いありませんでした)でした。
    ポートはどちらも25番ポートを使用しています。

    結論としては、どうやらYahooメールは、
    「SMTP before POP3」(で合っていますか?)のようで、
    EDMAXでは、一度送受信を行ってから送信テストを行ったため、うまくいっていたようです。

    しばらく後でもう一度確認したときには、
    1.プログラムからテスト→NG
    2.EDMAXで送信テスト→NG
    3.EDMAXで受信操作後、送信テスト→OK
    4.プログラムからテスト→OK
    となりました。

    「SMTP before POP3」について、そもそもあまりわかっていないため、
    (言葉のとおり、送信前にPOP3で認証するということでしょうか)
    勉強し、それから、先に受信動作を実行する実装を調べ、
    プログラムしてみようと思います。

    どうもありがとうございました。
    また、続報をお知らせできたらと思います。
記事No.15211 のレス /過去ログ31より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -