命令行编译C#.pdf
文本预览下载声明
csc.exe 带来的乐趣
C# 编译器选项概览
配置环境变量
命令行基础知识
用于指定输入和控制输出的选项
编译.NET 代码库
使用C# 响应文件
使用/reference 引用外部程序集
理解C# 2.0 引用别名
使用/addmodule 生成多文件程序集
创建Windows 窗体应用程序
通过csc.exe 使用资源
使用/define 定义预处理器符号
csc.exe 的以调试为中心的选项
scsc.exe 带来的乐趣
几乎没有人会否认集成开发环境(IDE) (例如,Visual Studio 2005 和Visual C# Express 2005 )所提
供的能使编程工作变得相当简单的诸多功能。但是,实际上IDE 自己通常不能提供对基础编译器的所
有方面的访问。例如,Visual Studio 2005 不支持生成多文件程序集。
此外,了解在命令行编译代码的过程,对于具有以下特征的用户可能有用:
偏爱最简单的生成.NET Framework 应用程序的方法。
希望揭开 IDE 处理源代码文件的方法的秘密。
希望利用 .NET 生成实用工具,例如,nant 或msbuild。
没有集成开发环境,例如,Visual Studio (但实际上具有免费提供的.NET Framework SDK)。
正在基于Unix 的系统(在该系统中,命令行是必须使用的工具)上使用.NET Framework,并且希望
更好地了解Mono 和/或Portable .NET ECMA 兼容C# 编译器。
正在研究当前未集成到Visual Studio 中的备选.NET 编程语言。
只是希望扩展他们的C# 编程语言知识。
如果您属于上面所述的这些用户,那么就忠实于自己的选择并继续读下去吧。
C# 编译器选项概览
C# 编译器csc.exe 提供了大量用于对创建 .NET 程序集的方式进行控制的选项。站在一个较高层次来
看,命令行选项属于下列八个类别之一(表 1)。
表 1. csc.exe 提供的标记的类别
C# 编译器类别 定义
输出文件 用于控制所生成的程序集的格式、可选的XML 文档文件和强名称信息的选
项。
输入文件 使用户可以指定输入文件和引用的程序集的选项。
资源 用于将任何必需的资源(例如,图标和字符串表)嵌入到程序集中的选
项。
代码生成 这些选项控制调试符号的生成。
错误和警告 控制编译器处理源代码错误/警告的方式。
语言 启用/禁用C# 语言功能(例如,不安全代码)以及条件编译符号的定义。
杂项 该类别的最有趣的选项使您可以指定csc.exe 响应文件。
高级 该类别指定一些更加深奥并且通常不太重要的编译器选项。
注 1.0 和 1.1 版本的C# 编译器中存在的/incremental 标志现在已过时。
在阅读本文的过程中,您将了解每个编译器类别中存在的核心标志(最重要的词是核心)。对于大多
数开发方案,可以安全地忽略C# 编译器的很多高级选项。如果您需要有关本文未予讨论的csc.exe 功
能的详细信息,请尽管放心,您可以参阅Microsoft Visual Studio 2005 文档帮助系统(只须从“Search”
选项卡中搜索“csc.exe”并深入查阅)。
注 MSDN 文档也会对您也很所帮助,因为它描述了如何在Visual Studio (如果可用)内部设置
csc.exe 的特定选项。
配置环境变量
在使用任何.NET SDK 命令行工具(包括C# 编译器)之前,需要配置开发计算机以识别它们的存在。
最简单的方法是使用Start | All Programs | Visual Studio 2005 | Visual Studio Tools 菜单选项,启
动预配置的Visual Studio 命令提示。这一特定的控制台能够自动初始化必要的环境变量,而无须您执
行任何操作。(Visual Studio .NET 2003 用户需要启动他们各自的命令提示)。
注如果您没有Visual Studio ,但是已经安装了.NET Framework SDK,则可以从Start | All
Programs | Microsoft .NET Framework SDK 2.0 菜单选项启动预
显示全部