我正在尝试从 Visual Studio 2010 调试 C/C++ native DLL 项目。我正在尝试按照以下说明进行操作: http://msdn.microsoft.com/en-us/library/c91k1xcf(v=VS.100).aspx
我想使用内置调试器并能够像处理常规 .exe 项目一样单步执行代码、检查结构等。上面页面上的说明描述了配置属性 下的调试 类别,我没有看到。
http://img707.imageshack.us/img707/4402/lalasz.png
直接按F5调试会出现如下错误:
Unable to start program 'C:\Users.......Test.dll'
我已将调试器多次用于常规 .exe 项目,并且在这台计算机上运行良好。不过,我不确定我现在是否只是遗漏了一些非常明显的东西。
编辑:因为我从一开始就没有说清楚,我希望 Visual Studio 将我的 DLL 加载到 stub 进程中,让我从那里在源代码级别进行调试,就像 OllyDbg 的做法一样。
我的 DLL 不是保存一堆要导出和调用的函数的类型。相反,它在 DllMain 和 DLL_PROCESS_ATTACH 上执行 switch/case 将产生一个新线程。因此,我需要 Visual Studio 做的就是将我的 DLL 加载到 stub 可执行文件中,并允许我设置断点等。
最佳答案
您可能将生成 dll 的项目作为启动项目。
您有两个选择:将启动项目更改为另一个生成使用该 DLL 的可执行文件的项目,或者从项目属性配置 dll 项目的调试设置以启动使用该 dll 的外部应用程序(项目属性/调试/命令)。
关于c - 调试 Visual Studio 2010 DLL 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3662035/