首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dotPeek发出调试第三方.dll

dotPeek发出调试第三方.dll
EN

Stack Overflow用户
提问于 2014-10-22 22:12:29
回答 1查看 4.7K关注 0票数 9

我使用dotPeek v1.2VS2013 Update 3来尝试调试引用的C# ..dll的代码。我遵循了以下教程中的所有说明:使用dotPeek作为符号服务器 (http://localhost:33417/设置为符号位置,等等)老实说,我读过许多像这样的文章,梳理了所有必需的设置,而且还没有看到一个调试第三方非框架.dll的有效解决方案,所以我不认为这是一个从这方面完全可行的产品。

Regardelss,dotPeek应该允许一旦符号服务器启动,并根据它们的文档从VSNET从第三方程序集中调试代码。我知道要为.dlls选择哪个dotPeek,因为我从Debug -> Windows ->模块中检查了它们的路径。

我碰巧也安装了ReSharper,当我右键单击一行代码并选择“Go to Declaration”时,它允许我进行反编译。问题是,在调试时,符号服务器似乎没有做任何事情来帮助提供代码。相反,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.ExecutionEngin.x86.exe 源文件与模块构建时不同。您想让调试器使用它吗?

如果我说,“是”和“在调试器中的步骤”似乎是在文件中不存在且不同步的行上。这是有意义的,因为它从‘源文件’位置显示.cs类,但是从/bin/Debug加载了.dll

但是,我不明白为什么会发生这种情况,因为dotPeek应该为从/bin/Debug加载的符号提供服务,而不是试图进入任何已解压缩的源ReSharper

我如何配置它,以便VS2103能够实际调试从dotPeek提供的符号和代码

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-23 08:03:55

一个大问题是,您需要确保在Tools -> Options -> Debugging ->符号页面中为缓存目录设置了有效的路径。

此外,在“主调试选项”页面(Tools -> options -> Debugging -> General)上,请确保:

  • 取消选中“只启用我的代码”选项
  • 取消选中“启用.NET框架源步进”选项
  • 检查“启用源服务器支持”选项
  • 取消选中“要求源文件与原始版本完全匹配”

还值得检查“打印源服务器诊断消息到输出窗口”选项,并在尝试进入第三方代码时检查输出窗口。希望它能指出任何问题。

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

票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26518013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档