我需要调试一些程序集,因为它们会抛出异常。这是我的程序集,但我没有它们的源代码。我拥有的是他们的 pdb 文件。
有没有办法通过 Visual Studio 调试该程序集?
- 编辑 -
当然,我也可以反汇编得到它们的 *.il 文件。它会以某种方式帮助我吗?
我需要调试一些程序集,因为它们会抛出异常。这是我的程序集,但我没有它们的源代码。我拥有的是他们的 pdb 文件。
有没有办法通过 Visual Studio 调试该程序集?
- 编辑 -
当然,我也可以反汇编得到它们的 *.il 文件。它会以某种方式帮助我吗?
实际上有几种方法可以做到这一点:
这正是我为Reflector付费的原因。需要调试别人的程序集?它完美地工作。
据我所知,PDB 文件只是调试的指针。也就是说,如果您没有源代码,那么 PDB 文件只会为您提供堆栈跟踪。
我不知道 Visual Studio 是否可以处理它,您可能需要手动连接到该过程。
不完全是在视觉工作室,但我过去在反射器中写了这样一个工具,叫做 d Deblector。不再由我管理,但看看。当然,调试体验与 Visual Studio 中的不同,但有时足以让您摆脱困境。
查看 dotPeek: https ://www.jetbrains.com/decompiler/
您可以将其设置为 Visual Studio 中的符号服务器,以生成允许您调试的 PDB 文件。它非常易于使用,并且与许多付费产品一样好。
您可以直接从 nuget 添加库,或指向 DLL。