如何用CSC.exe来编译Visual C#的代码文件
来源:网络整理 责任编辑:栏目编辑 发表时间:2013-07-02 04:53 点击:次
Visual C#是微软公司推出的新一代程序开发语言,Visual C#是微软公司.Net FrameWork框架中的一个重要的组成部分,也是微软公司向程序员极力推荐一个新的程序开发平台。和以往的开发语言相比较,他有更强大功能,更高的稳定性和更高的安全性。也正因为如此,Visual C#正在受到越来越多的编程爱好者的欢迎。
Visual C#的编译器和以往编程语言的编译器有着明显的不同。其最大的不同点就是,以往的程序编译器是把编写好的程序代码编译生成可以直接为计算机所使用的机器语言。虽然Visual C#的编译器也可以把编写好的程序代码编译成EXE或者是DLL文件,但这种文件只是一种IL文件(中间语言),此IL文件不能直接被计算机使用。只是当此IL文件被调用的时候,再通过一种名叫JIT(即时编译)编译器把此IL文件生成可以供计算机使用的机器代码。
可见Visual C#的编译过程大致可以分成二个部分,第一个部分,从程序代码到IL文件,这个过程是通过人工干预来实现的,即通过CSC.exe来实现的;第二个部分,从IL文件到机器语言,这个工程是机器自动实现的。本文就将具体来说明一下第一个部分,即如何用CSC.exe来正确编译Visual C#文件。
CSC.exe把Visual C#程序代码编译成IL文件时,有着很多参数和开关选项。正确的了解和运用这些参数和开关有时会解决一些看似很棘手的问题。下面就通过一张表来大致说明一下这些参数和开关的具体作用。这些参数和开关选项是按照字母顺序来排列的。其中带"*",是一些常用的参数或开关。
具体说明:
一.@
这个选项是用来指定响应文件。响应文件是一种包含了许多编译选项的文件。这些编译选项将和源代码文件一起由编译器进行处理。一般来说此种响应文件是以文本文件形式出现。他的扩展名是.rsp。在响应文件中是用#符号表示开始的注释。
例:以下是一个响应文件resp1.rsp的内容:
# 这是一个简单的响应文件,文件名称为resp1.rsp
#使用方法: csc @resp1.rsp
此
Visual C#的编译器和以往编程语言的编译器有着明显的不同。其最大的不同点就是,以往的程序编译器是把编写好的程序代码编译生成可以直接为计算机所使用的机器语言。虽然Visual C#的编译器也可以把编写好的程序代码编译成EXE或者是DLL文件,但这种文件只是一种IL文件(中间语言),此IL文件不能直接被计算机使用。只是当此IL文件被调用的时候,再通过一种名叫JIT(即时编译)编译器把此IL文件生成可以供计算机使用的机器代码。
可见Visual C#的编译过程大致可以分成二个部分,第一个部分,从程序代码到IL文件,这个过程是通过人工干预来实现的,即通过CSC.exe来实现的;第二个部分,从IL文件到机器语言,这个工程是机器自动实现的。本文就将具体来说明一下第一个部分,即如何用CSC.exe来正确编译Visual C#文件。
CSC.exe把Visual C#程序代码编译成IL文件时,有着很多参数和开关选项。正确的了解和运用这些参数和开关有时会解决一些看似很棘手的问题。下面就通过一张表来大致说明一下这些参数和开关的具体作用。这些参数和开关选项是按照字母顺序来排列的。其中带"*",是一些常用的参数或开关。
选项 | 用途 |
@ * | 指定响应文件。 |
/?, /help | 在控制台的计算机屏幕上显示编译器的选项 |
/addmodule | 指定一个或多个模块为集会的一部分 |
/baseaddress | 指定装入DLL的基础地址 |
/bugreport | 创建一个文件,该文件包含是报告错误更加容易的信息 |
/checked | 如果整数计算溢出数据类型的边界,则在运行时产生一个例外的事件 |
/codepage | 指定代码页以便在编译中使用的所有源代码文件 |
/debug * | 发送调试信息 |
/define | 定义预处理的程序符号 |
/doc * | 把处理的文档注释为XML文件 |
/fullpaths | 指定编译输出文件的反正路径 |
/incremental | 对源代码的文件进行增量编译 |
/linkresource | 把.NET资源链接到集合中 |
/main | 指定Main方法的位置 |
/nologo | 禁止使用编译器的标志信息 |
/nooutput | 编译文件但不输出文件 |
/nostdlib | 不导出标准库(即mscorlib.dll) |
/nowarn | 编译但编译器并不显示警告功能 |
/optimize | 打开或者关闭优化 |
/out * | 指定输出文件 |
/recurse | 搜索编译源文件的子目录 |
/reference * | 从包含集合的文件中导入元数据 |
/target * | 指定输出文件的格式 |
/unsafe | 编译使用非安全关键字的代码 |
/warn | 设置警告级别 |
/warnaserror | 提升警告为错误 |
/win32icon | 插入一个.ico文件导输出文件中去 |
/win32res | 插入一个Win32资源导输出文件中 |
具体说明:
一.@
这个选项是用来指定响应文件。响应文件是一种包含了许多编译选项的文件。这些编译选项将和源代码文件一起由编译器进行处理。一般来说此种响应文件是以文本文件形式出现。他的扩展名是.rsp。在响应文件中是用#符号表示开始的注释。
例:以下是一个响应文件resp1.rsp的内容:
# 这是一个简单的响应文件,文件名称为resp1.rsp
#使用方法: csc @resp1.rsp
/target:exe /out:sample.exe sample.cs |
此
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>