dotPeek问题调试第三方.dll

atc*_*way 7 debugging resharper visual-studio dotpeek

我使用dotPeek v1.2with VS2013 Update 3尝试调试引用的C#.dll的代码.我已经按照从下面的教程的所有方向:使用dotPeek作为一个符号服务器(http://localhost:33417/设置为符号的位置等),说实话,我已经读过了一堆像文章这样这个,通过所有必要的设置梳理和调试第三方非骨架的还真没见过1个有效的解决方案.dll文件,所以我不相信这是一个完全正常工作的产品,从这个方面.

Regardelss,dotPeek应该允许一旦符号服务器开始步入并根据他们的文档调试来自VSNET的第三方程序集的代码.我知道为dotPeek选择哪些.dll,因为我从Debug - > Windows - > Modules检查了它们的路径.

我碰巧ReSharper还安装了允许我在右键单击一行代码并选择"转到声明"时进行反编译.问题是,符号服务器似乎没有做任何事情来协助在调试时提供代码.相反,ReSharper提供的反编译源似乎是VS.NET想要进入的.问题是我总是得到以下错误:

源文件:C:\ Users\username\AppData\Local\JetBrains\ReSharper\v8.2\SolutionCaches_ReSharper.Meijer.Ecommerce.Nav.WebAppServices.-382002776\Decompiler\decompiler\53\66e7ccc2\MyClass.cs

模块:C:\ Projects\MyProject\bin\Debug

进程:[24808] vstest.executionengine.x86.exe

源文件与构建模块时不同.您希望调试器还能使用它吗?

如果我说'是'并且调试器中的步骤似乎位于文件中不存在且不同步的行上.这是有道理的,因为它.cs从"源文件"位置显示类,但从.dll加载.dll/bin/Debug

但是,我不明白为什么会发生这种情况,因为dotPeek应该提供加载的符号,/bin/Debug而不是试图进入任何反编译源ReSharper.

我该如何配置,从而VS2103实际调试符号和代码担任了dotPeek

cit*_*att 19

一个很大的问题是,您需要确保在工具 - >选项 - >调试 - >符号页面中为缓存目录设置了有效的路径.

此外,在主调试选项页面(工具 - >选项 - >调试 - >常规)上,请确保:

  • 取消选中 "启用我的代码"选项
  • 取消选中 "启用.NET Framework源步进"选项
  • 选中 "启用源服务器支持"选项
  • 取消选中 "要求源文件与原始版本完全匹配

还有必要检查"打印源服务器诊断消息到输出窗口"选项,并在尝试进入第三方代码时检查输出窗口.它应该有希望指出任何问题.

这就是我设置的方法,我可以调试第三方dll(显然,dotPeek也需要在开始调试之前在程序集资源管理器中加载.dll).