ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C#反编译修改代码,然后重新生成dll

2020-06-05 22:08:40  阅读:339  来源: 互联网

标签:反编译 文件 C# dll ildasm il ilasm


使用.NET提供的反编译工具ildasm和ilasm实现。

 

 

ilasm可利用中间语言IL生成可移植可执行文件(即编译过程);而ildasm是与前者配套的工具,它利用包含IL代码的可执行文件,创建适合输入到ilasm的文本文件(即反编译的过程)。

ildasm的软件目录通常为“C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools”,其中的版本可能根据安装不同而有所区别。可直接打开使用。

ilasm的软件目录通常为“C:\Windows\Microsoft.NET\Framework64\v4.0.30319”,其中的版本号及路径可能根据系统及安装不同而有所区别,该文件无法直接启动运行,通常在命令行中操作。建议提前将其添加到系统变量,过程不作赘述。

具体步骤如下:

1、打开ildasm后,选择需要修改的目标DLL或EXE文件,然后转存(dump)至目标文件夹path,转存前须自定义文件名称A。转存后,目录path中通常包含A.il和A.res两个文件,及其他resources文件。

2、打开A.il文件,按需求修改IL代码。

3、运行命令提示符,执行ilasm.exe /dll/resource=A.res A.il即可在同一目录path下生成A.dll文件。或者,执行ilasm A.il /output=B.dll /dll,可生成名称为B的dll文件。

 

标签:反编译,文件,C#,dll,ildasm,il,ilasm
来源: https://www.cnblogs.com/junhengml/p/13052499.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有