1. 背景

在vs里,经常用c++编写dll供其它程序调用。由于dll不能直接运行,所以调试dll有些麻烦。

2. 解决方法

其实,dll也是程序。本质上,只要dll被其它程序调用了,就可以F5进行调试。

1)单元测试时调试dll。

这种情况,我们会写个单元测试程序,会生成exe。而单元测试里引用了dll。

如图,

[20190507]VS下多个方案如何调试多个DLL多个exe

方案useDll是测试用,这个时候,我们将useDll右键设为启动方案。

然后在mfcDll里需要打断点的位置设置断点,F5进入调试。

当测试程序执行到dll相应方法里,就会停在断点。

这种方法对于外部的exe同样有效。

只是这时,要在设为启动的方案里进行设置。

选择调试中的命令,command里填外部exe地址(例如,$(SolutionDir)/test.exe),目录里填exe所在的目录。然后F5调试即可。

[20190507]VS下多个方案如何调试多个DLL多个exe

2)dll被其他外部exe调用和本项目里某个方案生成的子exe同时调用时。

这里,外部exe会调用子exe。

这个时候,我们先运行主exe,子exe也会被启动。

然后点击调试中‘全部分离’, 再点击‘附加到进程’, 选择附加到子exe程序,

即可进入子exe的代码中。

相关文章:

  • 2022-12-23
  • 2021-05-29
  • 2022-12-23
  • 2021-10-08
  • 2022-02-07
  • 2022-02-07
猜你喜欢
  • 2022-03-08
  • 2021-07-11
  • 2022-02-01
  • 2022-01-27
  • 2021-08-11
  • 2021-09-02
相关资源
相似解决方案