通用中间语言(Common Intermediate Language,简称CIL)(亦被称作MSIL或IL)是一种属于通用语言架构和 .NET 框架的低阶(lowest-level)的人类可读的编程语言。目标为 .NET 框架的语言被编译成CIL(基于.NET框架下的伪汇编语言,原:MSIL),这是一组可以有效地转换为本机代码且独立于 CPU 的指令。CIL类似一个面向对象的汇编语言,并且它是完全基于堆栈的。它运行在CLR上(类似于JVM),其主要支持的语言有C#、Visual Basic .NET、C++/CLI以及 J#(集成这些语言向CIL的编译功能)。

ilasm.exe

ilasm.exe即IL汇编程序,它可利用中间语言(IL)生成可移植可执行(PE)文件。可以运行一下生成的可执行文件(包含IL和所需的元数据)以确定IL是否按预期执行。
它虽然是*.exe文件但不能直接双击打开使用,必须在命令行工具中使用命令来让其运行,如果直接双击运行ilasm.exe就会出现一闪而过的情况。
当使用命令行工具来让其运行时,分为以下几步:
1、打开cmd.exe
2、ilasm.exe存储在我电脑中的C:\Windows\Microsoft.NET\Framework\v4.0.30319目录下,所以需要切换路径
3、现在我们可以使用ilasm命令来查看其所有操作、说明及命令格式

4、如果想输出*.exe文件,可以使用如下命令

ilasm /exe D:\Study\CIL\First.il /output:D:\Study\CIL\First.exe

5、如果想输出*.dll文件,可以使用如下命令

ilasm /dll D:\Study\CIL\First.il /output:D:\Study\CIL\First.dll

关于ilasm.exe的详细说明和参数请参考MSDN

ildasm.exe

ildasm.exe即IL反汇编程序,它是 IL 汇编程序 (ilasm.exe) 的配套工具。 ildasm.exe可利用包含中间语言(IL)代码的可移植可执行(PE)文件,并创建适合输入到ilasm.exe的文本文件(*.il文件)。
ildasm.exe文件可以直接双击打开使用,也可以在命令行工具中使用命令来让其运行。
1、当双击打开ildasm.exe时,把想要进行反汇编的文件拖到工具中即可,截图如下:

2、当使用命令行工具来让其运行时,分为以下几步:
a. 打开cmd.exe
b. ildasm.exe存储在我电脑中的C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools目录下,所以需要切换路径
c. 使用ildasm命令输出*.il文件

关于ildasm.exe的详细说明和参数请参考MSDN

CIL之——ilasm.exe和ildasm.exe相关推荐

  1. Reflector.exe + ilDasm.exe + ilasm.exe 破解DundasWebChart(VS2005) 5.5 成功

    Reflector.exe + ilDasm.exe + ilasm.exe 破解DundasWebChart(VS2005) 5.5 成功 1.       工具准备 .net FrameWork ...

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

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

  3. 用ILDasm.exe深入理解委托 ()

    .Net框架SDK中提供的IL(Intermediate Language:中间语言)反汇编工具(ILDasm.exe)来查看得到的托管PE文件中的元数据和IL代码..Net控件的核心就是公共语言运行 ...

  4. 【解决方案】VS2013外部工具中添加ildasm.exe

    VS2013安装在Win8.1的操作系统中,开始屏幕中找不到ildasm.exe没有显示,于是下面提供了一种方法将ildasm.exe工具添加到VS2013外部工具中,并将反编译的代码输出到VS201 ...

  5. ildasm.exe 查看c# dll 信息,符号 、函数等等

    ildasm.exe 查看c# dll 信息,符号 .函数等等 运行 ildasm.exe 把 C# 的 dll 拖入程序中即可

  6. 使用PageHeap.EXE或GFlags.EXE检查内存越界错误 (转)

    2011-05-27 20:19 290人阅读 评论(0) 收藏 举报 microsoftdebuggingstructureoutputimagefile 必先利其器之一:使用PageHeap.EX ...

  7. win2003系统+IIS6下,经常出现w3wp.exe和sqlserver.exe的内存占用居高不下

    在IIS6下,经常出现w3wp.exe,sqlserver.exe的内存占用不能及时释放,从而导致服务器响应速度很慢. 由于内存释放不及时严重影响到服务器的正常运营,建议采用以下配置,但请考虑自身服务 ...

  8. 威金病毒、维金病毒、Viking、logo1_.exe专杀 vdll.dll、logo1_.exe、rundl132.exe、_desktop.ini、、0Sy.exe、图标变花...

    威金病毒.维金病毒.Viking.logo1_.exe专杀 vdll.dll.logo1_.exe.rundl132.exe._desktop.ini..0Sy.exe.图标变花 Windows目录下 ...

  9. 安装了超图、oracle、eclipse、JDK后系统的java进程情况以及java.exe、javaw.exe

    发现系统java进程占用内存高:高时达500M: 展开查看详情,从电脑管家的内存管理中看不出所以然: Eclipse是另外单独的进程: 进入任务管理器,看到第一个java应用是超图服务器:占内存比较高 ...

最新文章

  1. Visual Studio 2017工程项目的几个重要文件解析
  2. 点云数据的类型主要分为_点云学习在自动驾驶中的研究概述
  3. ABAP中查找代码的标准程序
  4. java并发编程实践 读书笔记_Java - 并发编程实践(读书笔记)
  5. struts启动过滤器异常_面试必备:网关异常了怎么办?如何做全局异常处理?
  6. linux+后台运行+nohup,Linux后台运行命令集(、fg、bg、jobs、nohup、ctrl + z)
  7. 第三次学JAVA再学不好就吃翔(part9)--基础语法之键盘录入
  8. fun(n) Java_java程序员的kotlin课(N+2):suspending函数执行编排
  9. ubuntu安装LDAP
  10. 【Mysql优化】索引覆盖
  11. html新增的选择器,HTML5新增的选择器
  12. 基于机器视觉的眼镜镜片轮廓提取
  13. Maven学习五之Nexus中各repository介绍
  14. iOS开发 Xcode10报错缺少libstdc++.6.0.9.tbd
  15. Ubuntu16.04 安装 卸载 pip
  16. 如何取消计算机限制连接,怎样解除网络连接限制?
  17. pythonidle怎么设置_Python IDLE基本设置
  18. 同方知网软件_【技巧】方格网土方计算应用技巧,值得学习!
  19. 经营三类医疗器械不使用计算机,三类医疗器械计算机管理系统要求
  20. 什么人不在生死簿_人的生死簿-地府中类似于生死簿的东西有哪些/地府中类似于生死簿,-爱问知识人...

热门文章

  1. c语言ppt课件循环语句,C语言循环语句课件四章.ppt
  2. Android 翻转动画 Rotate3dAnimation 效果
  3. VB与ActiveX控件签名谈
  4. mysql用户授权root权限管理_mysql用户权限管理
  5. mac开发环境:mac笔记本电脑 m1 安装brew命令 脚本一键安装
  6. linux 抓包命令
  7. 2021年P气瓶充装考试报名及P气瓶充装最新解析
  8. 拼搏中的草根,只为挣得一个未来
  9. 玩转 Excel 数据导入
  10. 10种神级性能优化手段