MSIL Disassembler(ildasm.exe) -- 将C#程序或类库反汇编处理,显示C#编译器生成的CIL代码

C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\ildasm.exe  版本号:3.5.30729.1  32位

C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\x64\ildasm.exe  版本号:3.5.30729.1  64位

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\ildasm.exe  版本号:3.5.30729.1  32位

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\ildasm.exe  版本号:3.5.30729.1  64位

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\ildasm.exe  版本号:4.0.30319.1  32位

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\x64\ildasm.exe  版本号:4.0.30319.1  64位

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\ildasm.exe  版本号:4.0.30319.33440  32位

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\x64\ildasm.exe  版本号:4.0.30319.33440  64位

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\ildasm.exe  版本号:4.0.30319.0  32位

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\x64\ildasm.exe  版本号:4.0.30319.0  64位

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\ildasm.exe  版本号:4.0.30319.0  32位

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\ildasm.exe  版本号:4.0.30319.0  64位

示例代码:

namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
int a = ;
int b = ; int c = a + b;
}
}
}

命令行用法:

ildasm.exe /text d:\ConsoleApplication2.exe // 将ConsoleApplication2.exe反汇编结果显示在命令行窗口上

ildasm.exe /output:ConsoleApplication2.il ConsoleApplication2.exe // 一般可以得到2个文件:ConsoleApplication2.il(反编译得到的IL代码)和ConsoleApplication2.res(资源文件)

注:mono也有对应的反汇编工具monodis,可使用如下命令进行反汇编

monodis d:\ConsoleApplication2.exe // 将ConsoleApplication2.exe反汇编结果显示在命令行窗口上

ILSpy  -- 将C#程序或类库反编译为C#源代码

http://ilspy.net/

dnSpy     -- 将C#程序或类库反编译为C#源代码

github开源   https://github.com/0xd4d/dnSpy

.NET Reflector   -- 将C#程序或类库反编译为C#源代码

http://www.red-gate.com/products/dotnet-development/reflector/

ILMerge   -- 将多个.net程序集合并

ILMerge命令行:http://www.microsoft.com/en-us/download/details.aspx?id=17630

ILMerge-GUI版本(将下载下来的ILMergeGuiPortable.exe放到ILMerge.exe所在目录中即可):https://ilmergegui.codeplex.com/

.net工具基础的更多相关文章

  1. Linux命令工具基础04 磁盘管理

    Linux命令工具基础04 磁盘管理 日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩: 查看磁盘空间 查看磁盘空间利用大小 df -h -h: huma ...

  2. Maven 项目管理工具基础入门系列(二)

    一.前言 在 Maven 项目管理工具基础知识系列(一) 这篇文章中,我们已经初步了解了 Maven,也知道了使用 Maven 作为项目管理工具的好处,特别是已经知道如何快速通过 Maven 构建 W ...

  3. zabbix_get工具基础使用

    zabbix_get工具基础使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.zabbix_get工具概述 我们在使用zabbix server监控zabbix agent端 ...

  4. K8s(一)----容器编排工具基础概念

    kubernetes(k8s)容器编排工具基础概念 Kubernetes (K8s): 中文社区:https://www.kubernetes.org.cn/replication-controlle ...

  5. kubernetes(k8s)容器编排工具基础概念

    Kubernetes (K8s): 中文社区:https://www.kubernetes.org.cn/replication-controller-kubernetes 官网:https://ku ...

  6. Nmcli 网络管理命令行工具基础

    介绍 在本教程中,我们会在CentOS / RHEL 7中讨论网络管理命令行工具NetworkManager command line tool,也叫nmcli.那些使用ifconfig的用户应该在C ...

  7. Linux命令工具基础02 文件及目录管理

    文件及目录管理 文件管理不外乎文件或目录的创建.删除.查询.移动,有mkdir/rm/mv 文件查询是重点,用find来进行查询:find的参数丰富,也非常强大: 查看文件内容是个大的话题,文本的处理 ...

  8. Maven 项目管理工具基础知识系列(一)

    一.Maven 简介 Maven 中文意为 " 内行.专家 ",是 Apache 下的一个开源项目,属于纯 Java 开发,并且只是用来管理 Java项目的,它是一款项目管理工具, ...

  9. Metaspolit工具----基础

    Metasploit框架(Metasploit Framework,MSF)是一个开源工具,旨在方便渗透测试,他是有Ruby程序语言编写的模板化框架,具有很好的扩展性,便于渗透测试人员开发.使用定制的 ...

随机推荐

  1. 分布式事务解决方案以及 .Net Core 下的实现(上)

    数据一致性是构建业务系统需要考虑的重要问题 , 以往我们是依靠数据库来保证数据的一致性.但是在微服务架构以及分布式环境下实现数据一致性是一个很有挑战的的问题.最近在研究分布式事物,分布式的解决方案有很 ...

  2. sql server 性能调优之 资源等待PAGEIOLATCH

    一.概念 在介绍资源等待PAGEIOLATCH之前,先来了解下从实例级别来分析的各种资源等待的dmv视图sys.dm_os_wait_stats.它是返回执行的线程所遇到的所有等待的相关信息,该视图是 ...

  3. mysql 开发基础系列4 字符数据类型

    字符串类型 1.1 CHAR 和VARCHAR 类型 CHAR 列的长度固定为创建表时声明的长度,VARCHAR 列中的值为可变长字符串.在检索的时候,CHAR 列删除了尾部的空格,而VARCHAR ...

  4. AndroidStudio项目提交(更新)到github最详细步骤

    在使用studio开发的项目过程中有时候我们想将项目发布到github上,以前都是用一种比较麻烦的方式(cmd)进行提交,最近发现studio其实是自带这种功能的,终于可以摆脱命令行了. 因为自己也没 ...

  5. javaweb之Filter过滤器详解

    快速入门 1.新建一个类,实现Filter接口 2.实现doFilter()方法,打印一句话,来证明能够进行拦截 3.在web.xml中进行配置(参照Servlet配置) 4.访问一个页面,看看能不能 ...

  6. 【EF6学习笔记】(十)处理并发

    本篇原文链接:Handling Concurrency Concurrency Conflicts 并发冲突 发生并发冲突很简单,一个用户点开一条数据进行编辑,另外一个用户同时也点开这条数据进行编辑, ...

  7. jvm详情——6、堆大小设置简单说明

    年轻代的设置很关键JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理内存限制.32位系统下,一般限制在1.5G~2G:64 ...

  8. XML概念定义以及如何定义xml文件编写约束条件java解析xml DTD XML Schema JAXP java xml解析 dom4j 解析 xpath dom sax

    本文主要涉及:xml概念描述,xml的约束文件,dtd,xsd文件的定义使用,如何在xml中引用xsd文件,如何使用java解析xml,解析xml方式dom sax,dom4j解析xml文件 XML来 ...

  9. LeetCode算法扫题系列83

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9104582.html LeetCode算法第83题(难度:简单) 题目:给定一个排序链表 ...

  10. [转]centos每天自动备份mysql数据库

    本文转自:https://www.cnblogs.com/chongchong88/p/5566645.html #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/s ...