- PR -

メール送信時のエラー処理方法

投稿者投稿内容
コウイチ
常連さん
会議室デビュー日: 2003/11/04
投稿数: 48
投稿日時: 2004-06-28 20:58
引用:
今更な内容で申し訳ないですが。。。

Jitta さん、何度も何度も
返信本当にありがとうございます。m(_ _)m

メールの送信はSMTPMailクラスを使っています。

引用:
したがって、すべてExceptionで受けて、COMExceptionかどうかの判定だけ行うのは、ちょっとしんどいかと。

COMExceptionかどうかの判定を行わないで、
innerExceptionのCOMExceptionを普通?に例外を受け取るみたいに、
catch(COMException ce) のようにキャッチする方法はないのでしょうか?

つまり、
try{
 ・・・・
}catch(COMException ce){ // ce = e.innerException.innerException
 ・・・・
}catch(Exception e){
 ・・・・
}
という感じで、InnerExceptionを使う方法はないのでしょうか?

何度も申し訳ありませんが、
よろしくお願いします。m(_ _)m
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-06-29 08:32
引用:

コウイチさんの書き込み (2004-06-28 20:58) より:

という感じで、InnerExceptionを使う方法はないのでしょうか?


 それだけではない、ということです。

 まず、メールサーバを立て、テスト環境を構築します。そして、考えられる限りの例外的な状況を発生させます。このときはExceptionで受けて、Exception.GetType().ToString()で、どんな例外が発生したか、メモします。もちろん、InnerExceptionも調べます。すべての例外を検出し終わったら、そこからトラップするべき例外を抜き出し、それらのハンドラを記述します。トラップしない例外はキャッチしないか、再送出します。
コウイチ
常連さん
会議室デビュー日: 2003/11/04
投稿数: 48
投稿日時: 2004-06-29 11:53
Jitta さん、返信ありがとうございます。

引用:
すべての例外を検出し終わったら、そこからトラップするべき例外を抜き出し、それらのハンドラを記述します。トラップしない例外はキャッチしないか、再送出します。


すべての例外ですか><
テストできる例外を発生させてメモしてやってみます。

Jittaさん
本当にありがとうございました。m(_ _)m

スキルアップ/キャリアアップ(JOB@IT)