反编译并修改已生成的asp.net 网站

前言:前几天客户的网站报了个错,但由于站版本较老,苦于没有源码故迟迟不能查出原因,因而考虑用反编译的方式找到源码进行重新生成。

分析:由于原作者将多个CS文件打包成一个DLL文件,因此用替换DLL的方式修改Bug工作量太大;故用以下方法实现。

方法:步骤:

  1. 找出出错的aspx页面(一般用IE的开发人员工具调试就能搞定)。
  2. 根据aspx页面第一行inherits给出的值,在BIN目录下找到所引用的DLL。
  3.  用 .NET Reflector 7.0.0.420 Crack 将上面的DLL反编译,并找出出错页的代码 备用。
  4. 在VS中建一个项目(.net版本需与网站一致)。
  5. 将网站的所有文件复制到项目内,点击资源管理器中的显示文件,并将网站的所有文件及文件夹包括进来。
  6. 将网站BIN下的所有dll加到项目的引用内。
  7. 新建一个错误面对应的aspx.cs文件。
  8. 将出错aspx页内的第一行修改,如页面 InPutMarks_Mxx.aspx 内的第一行为
    <%@ page language="C#" autoeventwireup="true" EnableEventValidation="false"CodeBehind="InPutMarks_Mxx.aspx.cs"  。inherits="kqtj.kqtj_caocun.InPutMarks_Mxx" %>
     将其中的CodeBehind的值重新指向上一步中的CS文件,将inherits的值改为当前项目的引用(新建一个aspx页后,从中就能看出该填什么)。
  9. 将第三步中反编译的代码复制到第7步中建的CS内,添加些USING 。
  10. 现在就可以像调试自己的代码一样,下断点,等等操作了;这样就轻易找出错误点,并改好代码。
  11. 将改好的aspx文件和其对应的aspx.CS文件复制,并替换原站点内的文件。
  12. OK,大功告成。

 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、无需设置 由于它是一个便携式工具,它不需要您将其安装在目标计算机上,因为只需拆包其存档并启动可执行文件即可完全访问其功能。 您还可以从可移动存储介质(如USB闪存驱动器或外部HDD)运行它。此外,它不会修改系统中的注册表项,也不会在您的PC上生成其他文件或文件夹,但未经您的明确许可。 2、综合界面 dnSpy配备了一个时尚,全面的用户界面,包含广泛的有用功能,它们整齐地组织在主窗口的标准菜单中。 更重要的是,它具有标准配置窗口,您可以在其中调整各种组件的设置,如其反编译器,调试器或十六进制编辑器,但也可以修改显示或其他参数。 3、.NET反汇编程序 如果您需要一个高效的工具,可以通过为您提供各种有用的工具来帮助您反编译.NET程序集,您可以转到dnSpy。它配有一个反编译器,一个调试器,一个十六进制编辑器和一个程序集编辑器,让你以有效的方式处理程序集。 主窗口附带了一个Assembly Explorer窗格,您可以在其中访问所需程序集的树视图。您可以通过从计算机指定适当的文件或使用“从GAC打开”选项打开程序集,该选项为您提供全局程序集缓存中可用的条目列表。 4、.NET程序集的可靠反向工程工具 所有考虑的事情,dnSpy是一个方便的应用程序,使您能够以有效的方式逆向工程.NET程序集,为您提供广泛的有用工具,包括反编译器,程序集编辑器和调试器。它不需要安装,具有全面,平滑的用户界面,并为您提供了一个标准配置窗口,您可以在其中调整各种组件的设置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值