我有一个VB6应用程序。它正在调用.NET代码。 .NET代码偶尔会通过设计抛出异常。
VB6在调用.NET代码的函数中有一个On Error Goto语句。当.NET抛出异常时,VB6代码应该处理错误(在Goto块中),将Err.Description写入日志,并调用Err.Clear,并且应该按照它的方式继续。
从Visual Studio 6.0运行VB6应用程序时,这可以正常工作并且符合预期(如上所述)。当我从编译的exe运行VB6应用程序时,我在VB6日志文件中看到了预期的错误...但是在发生错误之后,VB6应用程序暂停了一会儿,然后意外崩溃。事件查看器中甚至没有APPCRASH报告。
有关如何解决此问题的任何想法?
答案 0 :(得分:1)
这听起来像是一个线程问题,即使你说的不是这样。我将从Process Explorer这样的工具开始,并监控调用时创建的线程。这可能是无意的。
其次,我也会记录.NET代码的成功返回 - 可能是代码中出现错误。