问题描述
我只想在消息框中显示所有崩溃消息,而不是对每个函数使用100次try try catch。是否可以只添加一些代码行一次,以便在消息框中显示崩溃消息?
Private Sub OnThreadException(ByVal sender As Object,ByVal e As ThreadExceptionEventArgs)
MessageBox.Show(e.Exception.Message)
End Sub
@H_404_6@
解决方法
您不能仅仅添加该方法并期望它做某事,因为它应该处理一个事件,因此您需要实际注册它才能处理该事件。
虽然有更好的选择。处理应用程序的UnhandledException
事件,您可以通过在项目属性的 Application 页面上单击查看应用程序事件按钮来完成。
尽管如此,这将关闭每个异常的应用程序。您应该做的是考虑在什么情况下可以合理预期到异常,将其捕获并在进行适当的清理后继续执行,然后使用UnhandledException
事件捕获您无法预测的异常。仅仅根本不去考虑异常是不合适的,但是在无法合理预期到异常的情况下捕获异常也是不合适的。