在 DLL 的 Visual Studio 实例中放置断点并在 .exe 中中断*

Placing breakpoints in DLL's Visual Studio instance and breaking in .exe's*

情况:

我正在开发一组 DLL 库,并在我测试它们的项目中单独使用它们。我经常需要在错误的地方中断,但是虽然通常我无论如何都会得到一个异常并且 VS 为我找到源文件和正确的位置,允许我在那里中断,但有时没有错误但是不需要的结果,所以我需要查看内部并查看实际数据 我当然可以从 .exe 解决方案中的调试模式开始导航到该点,但它隐藏了一些函数调用,我可能最终会得到 5-6 个文件打开比我需要的,加上找到它的时间。 问题:

有没有办法通过另一个实例的断点使一个VS实例在特定点中断?鉴于他们都看到相同的 .pdb 文件用于 DLL 中的调试信息,我想他们也可以共享此类信息,但显然不是(?)。我确实记得看到一个关于在 DLL 中跳过断点的问题所以我想 一些可行的东西。

当前选择:

到目前为止,我仅限于有目的地注入错误的代码位以使第二个实例在正确的位置打开文件,通常除以零就可以了,但它仍然有点来回.请注意,它现在是 VS2010,尽管我想他们在后续版本中没有对此进行任何更改。

提前致谢。

您可以使用 this:

Debugger.Break();

它向附加的调试器发出断点信号。只要把它放在你想调试的库里,启动你的程序,它就会停在这一行。