强大的.NET反编译软件

这个是官方的图片,可以看出和VS的风格还是很像的,使用起来也有很多相似的地方,善于用VS的人,可以很快的上手这个软件。当然除了这个深色的主题以外,还有浅色主题可以切换。

1. Debug外部引用的Dll文件

首先准备一个简单的程序,期待的结果是输入人数得到促销后的总价,界面如下:

看一下程序,其实就是简单的取得输入的人数,然后调用第三方类库的方法,得到结果:

这里的Calculator.GetAmountByPromotion方法是_3rdCalculator的第三方类库提供的,我们无法直接确定其内部实现。

输入一下测试数据:

再输入一下新的测试数据:

会发现很难推测出内部的逻辑。这个时候就可以进行debug了。

打开dnSpy.exe。这个时候请注意,由于这个项目用的是.net core并且是publish的,所以可以直接用dnSpy直接打开publish目录下的要debug的dll文件。

在需要的地方打上断点,然后使用attach的快捷键Ctrl+Alt+P,在弹出的列表里选择

再点击页面的提交按钮触发事件:

这个时候可以看到结果显示在下面Locals的窗口里面。

需要注意的是,如果是不需要publish的,而是直接把整个代码放在IIS下,然后每次编译就是一次发布的情况,不要直接使用代码下面的bin目录里的dll文件,因为IIS会把build出来的dll文件,动态生成一份出来,存到类似于WindowsMicrosoft.NETFramework64v4.0.30319Temporary ASP.NET Filesrootc8367e31abdb5fb1assemblydl3下面的目录里,这个时候要先搜索到你想debug的方法在哪个dll文件里,然后搜索到这个文件位置,再用dnSpy打开它,dnSpy会自动加载和这个dll有关联的所有dll文件,然后启动 站,这个再附加到w3p.exe上就可以了。

2. 调试应用程序

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年11月21日
下一篇 2018年11月21日

相关推荐