《C#完全手册》中提到的一些内部工具及编译选项
2008-08-15 13:09 老博客哈 阅读(1415) 评论(0) 编辑 收藏 举报.Net 为使用与开发人员提供了功能强大、种类丰富的管理与开发工具,同时他们也是.Net框架提供的服务,我们将它们列在下面,正是由于有了它们的支持.Net才变得如此强大:
1. Visual Studio.NET: .NET的核心开发工具,包括微软提供的各种开发语言
2. Assembly Generation Utility (al.exe): 用来建立集合的工具。它能够将资源文件或MSIL格式的文件转换为带有内容清单的集合。
3. Windows Forms ActiveX Control Importer (aximp.exe): 完成COM类库中类型定义的转换,是ActiveX控件能够在Windows窗口控件中使用。
4. Code Access Security Policy Utility (caspol.exe) 在用户与机器水平上修改安全策略。
5. Software Publisher Certificate Test Utility (Cert2spc.exe): 用于从X.509证书中生成软件出版说明书(SPC)。
6. Certificate Manager Utility (certmgr.exe): 管理证书、证书信任列表和证书回收列表。
7. Certificate Verification Utility (chktrust.exe): 检查证书签名的合法性。
8. Runtime Debugger (cordbg.exe): 运行时调试器,是一个命令行程序,帮助开发人员发现和调试基于CLR的应用程序中的错误。
9. Global Assembly Cache Utility (gacutil.exe): 允许浏览与操纵全局集合缓存中的程序。
10. MSIL Assembler (ilasm.exe): MSIL汇编程序,协助设计与实现MSIL生成器的程序。
11. MSIL Disassembler (ildasm.exe): MSIL反汇编程序,与ilasm.exe共同使用,将由MSIL代码产生的Portable Executable 文件转换为文本文件。
12. Installer Utility (installutil.exe): 用来安装与卸载服务资源。
13. License Compiler (lc.exe): 产生课包含在可执行二进制文件中的二进制资源文件。
14. Certificate Creation Utility (makecert.exe): 生成X.509证书与用于数字签名的公用与私有密钥。
15. Permissions View Utility (permview.exe): 通过一个集合浏览许可集的工具。
16. Peverify Utility (peverify.exe): 检查中间语言与原数据是否符合类型安全认证要求。
17. Assembly Registration Tool (RegAsm.exe): 读取集合中的元数据并加上必要注册表入口信息,使用COM客户透明地建立CLR的类。
18. Services Registration Tool (RegSvcs.exe): 服务注册工具,它完成执行以下功能:装载与注册一个集合,为现有的COM+1.0应用生成、注册与安装类库。
19. Resource File Generator Utility (ResGen.exe): 资源文件生成器,用来将文本文件和XML格式的资源文件转换为CLR的二进制文件。
20. Secutil Utility(SecUtil.exe): 使得从集合中抽取的安全信息更加容易。
21. Set Registry Utility(setreg.exe): 改变注册表中公开密钥密码系统的设置。
22. Assembly Cache Viewer (shfusion.dll): 允许你使用Windows 浏览器查看与操作全局集合缓存中的内容。
23. File Signing Utility (signcode.exe): 为PE(portable executable)文件做标记。赋予程序员在组件安全约束的基础上对安全性有更多的控制权。
24. Shared Name Utility (Sn.exe): 帮助程序员以共享名称建立集合。
25. Soapsuds Utility (SoapSuds.exe): 使用远程技术帮助你编译与Web服务相通信的客户应用。
26. Isolated Storage Utility(storeadm.exe): 一种用来管理隔离存储区的命令行工具。
27. Type Library Exporter(TlbExp.exe): 命令行程序,生成由集合名称指示的包含集合中公共类型定义的类库。
28. Type Library Importer (TlbImp.exe): 将COM类库中的类型定义转换为在CLR中与元数据格式一致的类型定义。
29. Web Service Utility (WebServiceUtil.exe): 帮助建立在ASP.NET Web服务与客户。
30. Windows Forms Class Viewer (wincv.exe): 能够在某种模式下快速查找类或者类序列的信息。
31. Windows Forms Designer Test Container (windes.exe): 允许开发人员测试开发出来的视窗窗体控件在设计时的行为。
32. XML Schema Definition Tool (xsd.exe): XML计划定义工具。
二、C#编译选项
我们可以灵活地使用.Net平台提供的命令行编译器的不同选项,选择不同的编译方式,从而灵活地对编译进行控制。
例如,如果我们希望对源文件Welcome.cs进行编译,生成名为MyWelcome.exe的可执行文件,我们可以采用这样的命令:
csc/out: MyWelcome.exe Welcome.cs
如果我们并不需要一个可执行文件,而仅仅是希望简单地检查源文件中是否存在语法错误,则命令可以写成:
csc/nooutput: Welcome.cs
如果不知道各个选项的具体含义,可以通过求助来获得:
csc/?
下标按照字母顺序给出了命令行编译器csc常用的参数及其用途。更加详细的信息参阅C#联机帮助文档。
选项 | 用途 |
---|---|
读取响应文件以获得更多选项。 |
|
将用法信息显示到 stdout。 |
|
将指定的模块链接到此程序集中 |
|
指定要生成的库的基址。 |
|
创建“Bug 报告”文件。如果与 /errorreport:prompt 或 /errorreport:send 一起使用,则此文件将与任何崩溃信息一起发送。 |
|
使编译器生成溢出检查。 |
|
指定打开源文件时使用的代码页。 |
|
发出调试信息。 |
|
定义条件编译符号。 |
|
仅使用强名称密钥的公共部分对程序集进行延迟签名。 |
|
指定要生成的 XML 文档文件。 |
|
指定如何处理内部编译器错误:prompt、send 或 none。默认值为 none。 |
|
指定对输出文件节使用的对齐方式。 |
|
使编译器生成完全限定路径。 |
|
将用法信息显示到 stdout。 |
|
/incremental |
启用增量编译 [obsolete]。 |
指定强名称密钥容器。 |
|
指定强名称密钥文件。 |
|
指定语言版本模式:ISO-1 或 Default。 |
|
指定要在其中搜索引用的附加目录。 |
|
将指定的资源链接到此程序集。 |
|
指定包含入口点的类型(忽略所有其他可能的入口点)。 |
|
指示编译器不自动包含 CSC.RSP 文件。 |
|
取消显示编译器版权信息。 |
|
指示编译器不引用标准库 (mscorlib.dll)。 |
|
禁用特定的警告消息 |
|
启用/禁用优化。 |
|
指定输出文件名(默认值:包含主类的文件或第一个文件的基名称)。 |
|
指定 .pdb 文件的文件名和位置。 |
|
限定此代码可以在其上运行的平台:x86、Itanium、x64 或 anycpu。默认值为 anycpu。 |
|
按照通配符规范,包括当前目录和子目录中的所有文件。 |
|
从指定的程序集文件引用元数据。 |
|
嵌入指定的资源。 |
|
使用下列四个选项之一指定输出文件的格式:/target:exe、/target:library、/target:module 或 /target:winexe |
|
允许使用不安全代码。 |
|
以 UTF-8 编码格式输出编译器消息。 |
|
设置警告等级 (0-4)。 |
|
将特定的警告报告为错误。 |
|
对输出使用此图标。 |
|
指定 Win32 资源文件 (.res)。 |