グローバル例外処理のためのサポート制御
-
08-06-2019 - |
質問
する場合、ASP.NET 1.1プロジェクトでは常に使用されている。asaxキャッチ。なんと、通常と同じように全ての例外は、Windows Formsユーザー制御、結局主催の家ます。何かに適切な方法を行って何かをするのはこのような態度を取るのか。
解決
対応する必要があるの System.Windows.Forms.Application.ThreadException
イベントのためのWindowsます。この記事でもい: http://bytes.com/forum/thread236199.html.
他のヒント
現在サポートアプリってハンドラ Application.ThreadException
, 上記のように、も AppDomain.CurrentDomain.UnhandledException
ほとんどの例外は到着の ThreadException
ハンドラが、AppDomainまたひも数少ない私の経験
使用している場合は、VB.NETきをタップは非常に便利なApplicationEvents.vb.このファイルが無料とVB.NET サポートプロジェクトを含む関する取扱い 独自のレンダリングメカニズムの例外.
このニフティファイルで"プロジェクト特性>>用途>>応募イベント"
ばねを使用しないVB.NETしんで取り扱い 願います。ThreadException.
Onsen世界...
Windowsアプリケーション
システム。Windowsの場合です。ます。願います。ThreadExceptionイベント
一般的に使用されている方法です。参照 MSDNのスレッドの例外
Asp.Net
システム。ます。HttpApplication.エラーイベント
通常用いられる。asaxファイルです。参照 MSDN。asaxグローバルハンドラ
コンソール-アプリケーション
システム。AppDomain.UnhandledExceptionイベント
一般的に使用されている方法です。参照 MSDN UnhandledException
Sub Main()
Dim currentDomain As AppDomain = AppDomain.CurrentDomain
AddHandler currentDomain.UnhandledException, AddressOf MyHandler
Try
Throw New Exception("1")
Catch e As Exception
Console.WriteLine("Catch clause caught : " + e.Message)
Console.WriteLine()
End Try
Throw New Exception("2")
End Sub
Sub MyHandler(sender As Object, args As UnhandledExceptionEventArgs)
Dim e As Exception = DirectCast(args.ExceptionObject, Exception)
Console.WriteLine("MyHandler caught : " + e.Message)
Console.WriteLine("Runtime terminating: {0}", args.IsTerminating)
End Sub