如何在VB6中调试VC ++ DLL

时间:2014-04-08 01:01:21

标签: vb.net visual-c++ dll vb6

我尝试了几种不同的方式,但没有一种方法有效。

方法1我尝试过:

启动VB程序并运行直到DLL运行。 打开VC ++(无项目)并选择Build |启动调试|附加到流程 附加到VB程序 在VC ++中打开DLL源代码文件,在代码中选择一个断点。 继续运行VB程序,它没有跳转到VC ++。

方法2我尝试过:

"经过长时间的斗争找到了答案。实际上我们必须在Projects-> settings-> debug-> category-> general-> Executable中为调试会话提供VB6.exe的路径。然后当你尝试通过拥有一个调试VC ++ dll时在需要检查的函数中断点,将打开一个新的VB6 IDE。请选择实际调用VC ++ 6 dll的VB6 Dll项目。运行该应用程序,当函数调用VC ++ 6进入VB6函数时,控件自动进入VC ++ IDE,您可以将其调试为usua"来自MSDN ---->它刚刚进入VB应用程序的下一行代码,没有像方法1那样进入VC ++ IDE。

VB应用程序声明了这样的dll文件:

 dim query as object
 query=CreateObject("ClientServer.getResultClass")

 query.execute(parameter1,parameter2)

我不确定是否需要将调试dll放入特定位置,或者我可能需要注册调试dll文件(我检查了gedit,注册了ClientServer.getResultClass)。

1 个答案:

答案 0 :(得分:0)

您使用方法1处于正确的轨道上。您需要确保附加“本机”调试器,并且DLL包含调试信息,并且源代码与DLL匹配。如果满足所有三个条件,它应该工作。请注意,几乎总是需要使用新构建的DLL来确保满足第三个条件。