通过控制台调用C#编译器和IL反汇编工具(Ildasm)

转载 2013年12月04日 12:05:24

转自:http://www.cnblogs.com/IPrograming/archive/2012/08/23/CSharp_Compiler_Option.html

通过控制台调用C#编译器和IL反汇编工具(Ildasm)

1.通过控制台调用C#编译器

  通过控制台直接调用C#编译器方便我们编写片段代码时不使用Visual Studio也能够对源码进行编译。在通过使用控台命令行调用C#编译器时,我们需要预先设置好操作系统的环境变量, 在Path变量中添加:;C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319。在这里我选择的是C# 4.0的编译器。

现在在E:\CSharp目录存放了两个C#的源文件,我们分别将它们编译成DLL文件和可执行程序(exe):

1.1 通过命令行编译成可执行程序(csc fileName.cs)

我们看到目录里面现在多了一个可执行文件:

 

1.2 通过命令行生成DLL文件(csc /target:library fileName.cs)

编译完成后目录里面会生成一个DLL文件:

 

2.通过控制台调用IL反汇编工具(Ildasm)

  在通过使用控台命令行调用Ildasm工具,我们同样也需要预先设置好操作系统的环境变量, 在Path变量中添加:;C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools。添加环境变量后我们就可以在任意位置调用Ildasm工具了。

  使用ILdasm工具的方法和上面调用C#编译器的方法类似,直接在控制台输入:ildasm (程序集路径|可运行程序路径<exe>)即可。

 

参考资料&扩展阅读

C#编译选项

MSIL 反汇编程序

作者:晴天猪

出处:http://www.cnblogs.com/IPrograming 

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。


ildasm、ilasm修改、反编译 已经编译的 dll文件(c#)

wewe
  • quxxx2009
  • quxxx2009
  • 2016年03月20日 00:36
  • 1237

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

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

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

为了保证示例的完整性,请先准备好一个 c#写的 exe 程序,或者可以使用我提供的 exe 程序也可以(很简单,为了测试这里仅生成了一个带按钮的 winform,单击按钮提示弹窗)Test Win...
  • w_yunlong
  • w_yunlong
  • 2016年04月07日 11:36
  • 5698

那些年干过的事(五)—无源码程序反编译修改文字

背景: 一同事提到某客户要求修改产品程序中的一段文字,正常情况下这是很简单的事情,不需要我这业余人员参与,但问题在于该客户使用的是旧版本产品,而旧版本产品的代码已遗失,这种情况下修改文字就成了一...
  • jmfang
  • jmfang
  • 2013年11月07日 13:08
  • 1089

操作步骤:用ildasm/ilasm修改IL代码

转:http://www.cnblogs.com/dudu/archive/2011/05/17/ildasm_ilasm_il.html 在开发中遇到这样一个场景,需要修改一个dll文件(...
  • zhangmiaoping23
  • zhangmiaoping23
  • 2017年04月14日 11:13
  • 369

IL反汇编器(ILDASM)和IL汇编器(ILASM)Hello World小demo

最近在看Enpert .NET 2.0 IL Assembler这本书,可能会花去我很多时间,不过只是看了第一张就被它折服了,原作者简直是庖丁解牛,层层深入。翻译又是那么牛B,此书建议有想深入了解NE...
  • Joyhen
  • Joyhen
  • 2015年08月10日 16:36
  • 2469

读懂IL代码就这么简单 (一)

转自 http://www.lupaworld.com/article-229958-1.html 对于IL代码没了解之前总感觉很神奇,初一看完全不知所云,只听高手们说,了解IL代码你能更加清楚的知道...
  • cp790621656
  • cp790621656
  • 2015年06月20日 14:01
  • 1547

C#中CLR(公共语言运行时)与IL(中间代码)

.net平台中的CLR首先要说明的是,.NET平台与C#不是一回事 它是C#,VB.net等程序运行的平台。CLR是公共语言运行时,是 .NET Framework的重要组成部分。它提供了内存管理...
  • Pwiling
  • Pwiling
  • 2016年05月20日 15:00
  • 6924

C# 命令行编译器详解

摘要:本文分析了使用 C# 命令行编译器 csc.exe 生成应用程序的过程。同时,还将向读者介绍很多为 C# 2.0 独有的编译器选项,例如,extended/reference 标志和强名称支...
  • CNHK1225
  • CNHK1225
  • 2014年05月04日 16:14
  • 2186

C# 构造函数避免IL(反编译)代码膨胀的方法--C#编译有点狂啊

C# 构造函数避免IL代码膨胀的方法--C#编译有点狂啊
  • u010533180
  • u010533180
  • 2017年03月31日 12:42
  • 1025
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:通过控制台调用C#编译器和IL反汇编工具(Ildasm)
举报原因:
原因补充:

(最多只允许输入30个字)