在VB6中获取堆栈跟踪

时间:2012-08-26 18:22:56

标签: c++ vb6 stack-trace

不是flog一个dead horse,但我在CodePlex上找到了一个名为StackWalker的项目,该项目为本机应用程序(C ++应用程序)提供堆栈跟踪。对现代C ++不太了解,这对VB6应用程序也有用吗? VB6的功能是否与C ++中的功能有所不同?

1 个答案:

答案 0 :(得分:6)

这首先取决于你如何构建你的vb6应用程序。 Project + Properties,Compile选项卡。确保选中“编译为本机代码”单选按钮。并打开“创建符号调试信息”选项,此工具需要PDB才能提供有用的堆栈跟踪。请注意,当您从IDE运行代码时,它将无法正常工作,而这些代码始终构建为p代码。

更难的问题是调试msvbvm60.dll(VB6虚拟机)的信息。您运行的大多数代码都会通过此支持DLL,即使您构建为本机代码也是如此。 Microsoft符号服务器不再提供您需要的PDB。不知道为什么,可能是因为它真的是一匹死马。