Visual Basic 6.0(VB6)中的一个小问题
假设我错过了一个可能的情况,并且用户做了一些事情并且没有想到,那么他会收到使我的应用程序崩溃的错误。如果发生这种情况,是否有我可以处理的事件可以执行某些代码?
尝试过Form_Terminate \ Unload \ Query_Unload,运气不高。
崩溃:又名运行时错误。
您可以On Error
在任何级别添加支票,包括Sub Main
。在该功能级别进行的错误检查未捕获到的所有错误将通过调用堆栈上升到主/初始方法,您可以在那里捕获它们。
然后,您可以优雅地显示错误(以便您或您的用户知道该错误),然后恢复此时最佳的方法。而且,请记住,您可以在几个不同的战略级别和位置执行此操作。
如果错误是在事件过程中发生的,那么这些错误将不会被捕获,Sub Main()
因此您也需要在其中捕获它们。
任何上升到堆栈顶部的错误,无论是超出Sub Main()
还是发生的事件过程,都将被运行时捕获,并且是致命的。您的代码将不会收到任何通知。
您可能也对VBA错误处理的良好模式帖子感兴趣。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句