- PR -

mscorlib.dllでのSystem.ArgumentOutOfRangeエラーがキャッチできない

1
投稿者投稿内容
しょん
会議室デビュー日: 2007/08/02
投稿数: 10
お住まい・勤務地: 東京都
投稿日時: 2007-10-09 16:52
いつもお世話になっております。
表題の件でご存知の方がいらっしゃいましたら御教授願います。

■現象
C#にて作成したツールにて、ログ情報をテキストファイルへ出力時に、以下の(イベントログ)エラーによって強制終了されてしまう。

EventType clr20r3,
P1 *****.exe,
P2 1.0.0.0,
P3 46d511ea,
P4 mscorlib,
P5 2.0.0.0,
P6 4333ab80,
P7 15b,
P8 38,
P9 system.argumentoutofrange,
P10 NIL.

■詳細
現象が発生しているソースの抜粋です。

try
{
logCSVFile.WriteLine(string.Format("{0}", errorMessageText));
}
catch (System.Exception ex)
{
appEventLog.WriteEntry(string.Format("ログファイル出力時,例外が発生しました。\r\n{0}", ex.Message), EventLogEntryType.Error, 3);
}

System.Exceptionにて例外をキャッチしてほしいのですが、
キャッチすることができずに強制終了されています。

ログファイルの内容は、途中でカットされた状態で出力されています。

■状況
本現象は、本番環境でのみ発生している現象で、
開発環境では再現できず、デバッグできない状態となっています。

■環境
OS:WindowsServer2003
開発環境:VisualStudio2005
開発言語:C#.NET

以上です。
どうぞご協力よろしくお願い致します。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-10-10 00:03
System.AppDomain.UnhandledException イベントとかでもダメでしたでしょうか?

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
しょん
会議室デビュー日: 2007/08/02
投稿数: 10
お住まい・勤務地: 東京都
投稿日時: 2007-10-10 10:41
引用:

じゃんぬねっとさんの書き込み (2007-10-10 00:03) より:
System.AppDomain.UnhandledException イベントとかでもダメでしたでしょうか?





ご返信ありがとうございます。

catch (System.AppDomainUnloadedException ex)
というコードを追記しましたが、
既にSystem.Exceptionにてキャッチされるようで、
ビルドができませんでした。

引き続き調査してみます。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-10-10 11:02
引用:

しょんさんの書き込み (2007-10-10 10:41) より:

catch (System.AppDomainUnloadedException ex)
というコードを追記しましたが、既にSystem.Exceptionにてキャッチされるようで、ビルドができませんでした。


試される内容が誤っております。 System.AppDomain.UnhandledException イベントです。 完全修飾名が違うので別物ですし、イベントですし、使い方も違います。 私の方で試せれば良いのですが環境がありません。 ちなみに UnhandledException イベントは例外から復帰できる最後のチャンスとなるイベントです。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
しょん
会議室デビュー日: 2007/08/02
投稿数: 10
お住まい・勤務地: 東京都
投稿日時: 2007-10-10 11:39
引用:

じゃんぬねっとさんの書き込み (2007-10-10 11:02) より:

試される内容が誤っております。 System.AppDomain.UnhandledException イベントです。 完全修飾名が違うので別物ですし、イベントですし、使い方も違います。 私の方で試せれば良いのですが環境がありません。 ちなみに UnhandledException イベントは例外から復帰できる最後のチャンスとなるイベントです。





お早いご返信ありがとうございます。

一点後報告です。
環境について記述漏れでした。
.NET Framework 2.0を使用しております。

ソースに記述する際に、System.AppDomain.UnhandledExceptionが候補に見当たりません。
サイトにて調べてみると、.NET Framework 2.0では削除されたとありました。

http://msdn2.microsoft.com/ja-jp/library/system.appdomain.unhandledexception(VS.80).aspx

初心者なもので、どこに記述すれば使用できるのか分かりませんが、
調べてみたいと思います。
しょん
会議室デビュー日: 2007/08/02
投稿数: 10
お住まい・勤務地: 東京都
投稿日時: 2007-10-10 11:59
イベントなんですね・・・。
確かに使用方法が違いました。
お恥ずかしい勘違いでした。

試させていただきます。
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2007-10-10 12:11
引用:

サイトにて調べてみると、.NET Framework 2.0では削除されたとありました。

http://msdn2.microsoft.com/ja-jp/library/system.appdomain.unhandledexception(VS.80).aspx



もう一度、じっくりと読み返してみましょう。

「System.AppDomain.UnhandledException イベント」が「削除された」のではありません。
1

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