使用附加到进程的DotPeek调试,没有源代码?

时间:2018-07-17 09:57:35

标签: c# visual-studio debugging dotpeek

我很想调试服务,但是没有代码位于服务器上,因为那里有很多东西而且移动起来并不容易。

我们当前在使用一台服务器时遇到问题,而我可以调试问题的唯一方法是使用dotpeek反编译.dll并显示here @IgalTabachnik

问题是最后一步,我的断点给出一个错误,并说源代码不可用?我不明白吗? ...应该可以通过dotpeek获得吗?

可能要解决的另一件事是,我正在调试计划任务,并且无法同时启动时附加到进程。

1 个答案:

答案 0 :(得分:1)

如果您在dotPeek +符号服务器上遇到问题,建议您使用dnSpy。为此,您需要:

  1. 以管理员身份打开dnSpy(取决于目标平台,为dnspy-x86.exe或dnspy.exe)
  2. 通过File-> Open将包含服务代码的.exe文件加载到dnSpy中
  3. 导航至要在其中放置断点的代码并将其设置在此处。
  4. 转到Debug-Attach进行处理。由于您以管理员身份运行dnSpy,因此您应该在列表中看到您的服务。
  5. 选择并附加到流程
  6. 触发断点。
  7. 调试
dnSpy生成自己的源代码并具有调试功能,因此您可以执行其中的所有操作。它的调试经验与Visual Studio相似,但是效果却不如VS。尽管如此,它仍然可以胜任。