为了保证示例的完整性,请先准备好一个 c#写的 exe 程序,或者可以使用我提供的 exe 程序也可以(很简单,为了测试这里仅生成了一个带按钮的 winform,单击按钮提示弹窗)

Test WinForm.exe

这里通过 ildasm 反编译 exe 程序得到 il 文件,然后对 il 文件进行修改,用于修改弹窗中的内容

ilasm 所在目录

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ilasm.exe

ildasm 所在目录

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\ildasm

以上根据具体情况在自己的目录中查找即可

以下是具体的操作步骤

一、反编译 exe 为 il 文件

双击打开 ildasm –> 点击文件 –> 打开刚刚下载或自己的 exe 程序 –> 点击文件 –> 转储选择 UTF8 –>选择位置保存 il 文件,同时可能会生成一些资源(res)文件,具体如图




接下来就是对 il 文件进行修改,这里以示例提供的 exe 为例,点击按钮时弹出的内容为 message ,这里想要让这个 message 改为 message123

修改后,对 il 文件重新编译为 exe 文件,命令为:

ilasm test.il /output:test.exe

如果需要资源文件,则

ilasm test.il /resource:test.res /output:test.exe

如果要编译为 dll 文件,则

ilasm test.il /dll /output:test.dll

然后再执行 test.exe 并点击按钮,发现弹出的内容已修改为 message123

使用微软的 ilasm 和 ildasm 对. net程序进行编译和反编译相关推荐

  1. ilasm 和 ildasm编译和反编译工具介绍使用教程

    目录 前言 一.使用 ildasm 反编译 dll 文件 二.使用 ilasm 将il文件编译成 dll 或 exe 文件 前言 文本讲述怎么通过 ildasm 工具将 dll 文件进行反编译为 il ...

  2. 反编译“微软纸牌集合”资源文件

    @[TOC]反编译"微软纸牌集合"资源文件 成功反编译"微软纸牌集合"资源文件 一天时间,终于成功反编译了"微软纸牌集合(Microsoft Soli ...

  3. MSIL学习笔记(01):ilasm和ildasm

    我跟每个.NET程序员一样,MSIL多少都接触过一点,个别语句也能看明白,但是没有系统学习过 更没有写过IL代码 和 编译过 IL我觉得学习方法应该跟其他语言不同,因为这个语言根本上不是用来手写的,因 ...

  4. 初识Ildasm.exe——IL反编译的实用工具(转自Youngman)

    Ildasm.exe 概要: 一.前言: 微软的IL反编译实用程序--Ildasm.exe,可以对可执行文件(ex,经典的控制台Hello World 的 exe 可执行文件)抽取出 IL 代码,并且 ...

  5. 用csc手动编译和Ildasm反编译

    CSC csc.exe是.net用来编译.cs文件的.一般来说在C:\Windows\Microsoft.NET\Framework\v2.0.50727. 1.配置环境变量 首先确认是否配置环境变量 ...

  6. Unity3d 反编译破解游戏 简单示例 使用ildasm反编译DLL修改然后重新编译DLL

    因为这几天碰到一个Unity的Bug,不得不去反编译DLL看看C#代码的生成中间件代码.这也用到了一些反编译以及重新编译DLL的一些知识,意味到Unity是如此的不安全. 首先我们新建一个工程,创建一 ...

  7. 微软,您的.net为中国程序员带来了什么?

    往事如烟:2003年,那时我还在念大三,像中国大多数学生一样,为到底是投诚Java还是效忠.net日夜争论,上下求索,迷茫中特别渴望有一盏明灯照亮我辈学子的前程,当时,各大媒体的报道是市场中.net和 ...

  8. 开放源码的.NET 反编译工具 .NET IL调试工具 学习微软中间语言(MSIL)的绝佳工具 Dotnet IL Editor 推荐...

    Dotnet IL Editor是一款.NET平台反编译工具,可以反编译.NET程序集文件为IL代码,并且可以执行,调试反编译后生成的IL代码.它的设计出发点比较直观,新建一个项目,添加程序集文件,设 ...

  9. 微软SerialPort秘籍,SerialPort为什么死锁程序的分析

    微软SerialPort秘籍,SerialPort为什么死锁程序的分析 作者:天涯 来源:中国自学编程网 发布日期:1232178634 既然是秘籍,显然是写一些大家不常找到的,MSDN里遗漏提示大家 ...

最新文章

  1. 铅笔芯为什么点不着?
  2. ubuntu常见指令
  3. vuex第三弹vuex之actions(前端网备份)
  4. 超好的Git学习网站
  5. OO第一单元总结__多项式求导问题
  6. # 根据三边求角度_小升初数学必学的10种图形求面积法,你家娃都会了吗?
  7. 鸿蒙OS电脑体验,华为鸿蒙OS体验抢先曝光!有多个更新版本,界面和安卓完全不同...
  8. 12.软件架构设计:大型网站技术架构与业务架构融合之道 --- CAP理论
  9. 域名被封(微信)后的思索
  10. media query学习笔记
  11. php 日期format不要零_DateFormat PHP Class (php 处置日期)
  12. sqlServer取余数
  13. 林轩田之机器学习课程笔记( embedding numerous feature之support vector regression)(32之22)
  14. Utf-8编码汉字占多少个字节
  15. PTA L2-039 清点代码库
  16. [数学]二维对数正态分布的概率分布,期望,方差和相关系数
  17. xhr请求status是failed的解决办法
  18. 为什么在中国电子工程师不如搞软件的?
  19. Hbulider中,QQ分享到好友,总是提示,分享失败,请检查网络并重试
  20. 概念:监督学习、无监督学习与半监督学习

热门文章

  1. mysql查询条件_mysql条件查询,最简单的一种,你知道吗?
  2. java改写模式_Java基于状态模式实现的文档编辑模式切换功能实例
  3. python win32转pdf 横版_使用Python3将word文档和pdf电子书进行格式互转(兼容Windows/Linux)...
  4. linux怎么把磁盘的东西拷贝,[Linux]如何拷贝已有数据磁盘,并将新的磁盘挂接到其他虚机上...
  5. 过滤设置_深圳外置鱼池过滤器零售_杰蒙尼鱼池过滤器
  6. (12) ejb学习: JPA的传播属性
  7. (3) ebj学习:有状态bean和无状态bean区别
  8. 实训课俄罗斯方块之二授课计划总体规划
  9. python语言术语_python的一些术语
  10. Kubernetes的Device Plugin机制源码解析