如何使用VB.NET监听并捕获应用程序崩溃事件?
- 内容介绍
- 文章标签
- 相关推荐
本文共计399个文字,预计阅读时间需要2分钟。
在VB.Net开发的应用程序中,部分用户在启动时遇到崩溃。这通常是由于程序无法正常工作导致的。只需点击关闭程序按钮即可解决问题。由于应用程序加载时发生许多事件,是否可以知道具体原因?
我在VB.Net上做了一个应用程序.但有些用户在启动时会遇到崩溃.这是“一个问题导致该程序无法正常工作”只需一个按钮“关闭程序”.由于应用程序加载时发生了很多事情,是否可以知道导致问题的原因? 如果在项目的属性中启用了“应用程序框架”,请单击“应用程序”项目属性页面上的“查看应用程序事件”按钮.然后添加事件处理程序:Partial Friend Class MyApplication Private Sub MyApplication_UnhandledException(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs) Handles Me.UnhandledException ' ... End Sub End Class
如果您没有使用应用程序框架,则应该在整个Main方法周围放置一个try catch块.但是,这只会捕获主线程上发生的异常.如果您的应用程序是多线程的,则可以通过创建如下方法来处理来自所有线程的异常:
Public Sub UnhandledExceptionHandler(ByVal sender As Object, ByVal e As UnhandledExceptionEventArgs) ' ... End Sub
然后将它附加到当前域的UnhandledException事件,如下所示:
AddHandler AppDomain.CurrentDomain.UnhandledException, AddressOf UnhandledExceptionHandler
无论当前线程如何,该事件处理程序将从域中的任何位置调用所有未处理的异常.
本文共计399个文字,预计阅读时间需要2分钟。
在VB.Net开发的应用程序中,部分用户在启动时遇到崩溃。这通常是由于程序无法正常工作导致的。只需点击关闭程序按钮即可解决问题。由于应用程序加载时发生许多事件,是否可以知道具体原因?
我在VB.Net上做了一个应用程序.但有些用户在启动时会遇到崩溃.这是“一个问题导致该程序无法正常工作”只需一个按钮“关闭程序”.由于应用程序加载时发生了很多事情,是否可以知道导致问题的原因? 如果在项目的属性中启用了“应用程序框架”,请单击“应用程序”项目属性页面上的“查看应用程序事件”按钮.然后添加事件处理程序:Partial Friend Class MyApplication Private Sub MyApplication_UnhandledException(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs) Handles Me.UnhandledException ' ... End Sub End Class
如果您没有使用应用程序框架,则应该在整个Main方法周围放置一个try catch块.但是,这只会捕获主线程上发生的异常.如果您的应用程序是多线程的,则可以通过创建如下方法来处理来自所有线程的异常:
Public Sub UnhandledExceptionHandler(ByVal sender As Object, ByVal e As UnhandledExceptionEventArgs) ' ... End Sub
然后将它附加到当前域的UnhandledException事件,如下所示:
AddHandler AppDomain.CurrentDomain.UnhandledException, AddressOf UnhandledExceptionHandler
无论当前线程如何,该事件处理程序将从域中的任何位置调用所有未处理的异常.

