1

I am trying to debug old DLLs (for which I have the project and source code) used by an APP (which I cannot build anymore). The project was developed using Visual Studio 6, so this is what I am using as well.

What I tried without success:

  • Added MsgBox in a routine that I know for sure it is called by the APP (so I can have a pause to attach the debugger to the process)
  • Built the Debug version of the DLL
  • Deployed the DLL and PDB in the folder where the APP is (overwriting the original DLL)
  • Added the path to deployed DLL in Project Settings -> Debug -> Additional DLLs (VS 6)
  • Started the APP. The MsgBox popup showed. I attached to the APP process and added breakpoints
  • Breakpoints are hit but the "Go To Source" does not reveal the sources

Any idea what I am doing wrong? Thank you in advance!

4

1 回答 1

0

即使我有 DLL 和项目的源代码,我也遇到了 VC6 的这个问题。我认为您可以浏览源代码,如果您查看调用堆栈,它应该会告诉您要转到源代码的哪一行。
另一个选择是在你有源的 DLL 项目上打开 VS6.0 IDE,但是在调试器设置中放置 APP exe 的名称并用参数启动它,我认为这是我以前使用的技术. 我不再使用 VS6.0,而且必须启动虚拟机才能使用它。尽管有一个技巧可以在现代 Win7/WinServer2019 机器上强制安装 VS6.0。您必须禁用一些会挂起安装的安装组件。但它会安装并运行,我只是不再有媒体。

于 2021-08-18T23:07:34.890 回答