글로벌 예외 처리를 위해 winforms controls
-
08-06-2019 - |
문제
에서 작업할 때 ASP.NET 1.1 프로젝트를 항상 사용합니다.맨를 모두 잡아 오류가 있습니다.내가 찾는 것은 비슷한 방법을 모두 잡아 예외에서는 윈도우 폼 사용자 정의 컨트롤 끝내는 되는 호스트는 IE 제어합니다.무엇을 적절한 방법에 대해 이동하는 뭔가 이것을 좋아하는가?
해결책
를 처리해야 합 System.Windows.Forms.Application.ThreadException
이벤트 Windows Forms.이 문서에서는 정말로 도움이: http://bytes.com/forum/thread236199.html.
다른 팁
현재 내 winforms 가에 대한 핸들러 Application.ThreadException
, 위와 같지만,또한 AppDomain.CurrentDomain.UnhandledException
대부분의 예외를 통해 도착하는 ThreadException
핸들러하지만,사용되지 않는 하나도 잡히 몇 내 경험에
를 사용하는 경우 VB.NET 할 수 있습으로 두 매우 편리 ApplicationEvents.vb.이 파일은 무료로 제공됩로 VB.NET WinForms 프로젝트가 포함 처리하는 방법 처리되지 않은 예외.
이 멋진 파일,그것은"프로젝트 속성>>Application>>응용 프로그램"이벤트
를 사용하지 않는 경우 VB.NET 다음,네,그것은 처리 응용 프로그램.ThreadException.
예외를 처리하는 세계적으로...
Windows 응용 프로그램
시스템입니다.Windows.Forms.응용 프로그램.ThreadException 이벤트
에서 일반적으로 사용하는 주요 방법입니다.참조 MSDN 실외
Asp.Net
시스템입니다.웹.HttpApplication.오류 이벤트
일반적으로 사용합니다.맨 파일입니다.참조 MSDN 글로벌입니다.맨 글로벌 Handlers
를 콘솔 프로그램
시스템입니다.사용되지 않.이벤트
에서 일반적으로 사용하는 주요 방법입니다.참조 MSDN 이
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