网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > C# > 正文
使用 C# 2.0 命令行编译器
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/14
下载{$ArticleTitle}原创论文样式
许用途最多的输入/输出选项是 /target。该标志通过使用附加的修饰(表 4)告诉编译器您对生成哪个类型的 .NET 程序集感兴趣。

4. /target 标志的变体

目标修饰定义

/target:exe

创建基于控制台的程序集。如果未指定 /target 选项,则这是默认选项。

/target:winexe

创建基于 Windows 窗体的可执行程序集。尽管您可以使用 /target:exe 创建 Windows 窗体应用程序,但控制台窗口将在主窗体的后台隐现。

/target:library

用于生成 .NET 代码库 (*.dll)。

/target:module

创建将成为多文件程序集的一部分的模块。

返回页首返回页首

编译 .NET 代码库

为了说明使用 csc.exe 的输入/输出选项的过程,我们将创建一个强命名的单文件程序集 (MyCodeLibrary.dll),以定义一个名为 SimpleType 的类类型。为了展示 /doc 选项的作用,我们还将生成一个 XML 文档文件。

首先,请在驱动器 C 上创建一个名为 MyCSharpCode 的新文件夹。在该文件夹中,创建一个名为 MyCodeLibrary 的子目录。使用您选择的文本编辑器(notepad.exe 就完全合乎需要)输入以下代码,并将该文件保存为刚刚创建的 C:\MyCSharpCode\MyCodeLibrary 目录中的 simpleType.cs。

// simpleType.csusing System;namespace MyCodeLibrary{  /// <summary>  /// Simple utility type.   /// </summary>  public class SimpleType  {    /// <summary>    /// Print out select environment information    /// </summary>    public static void DisplayEnvironment()    {      Console.WriteLine("Location of this program: {0}",        Environment.CurrentDirectory);       Console.WriteLine("Name of machine: {0}",         Environment.MachineName);      Console.WriteLine("OS of machine: {0}",         Environment.OSVersion);      Console.WriteLine("Version of .NET: {0}",         Environment.Version);    }            }}

现在,打开命令提示,并且使用 cd(更改目录)命令导航到 simpleType.cs 文件的位置 (C:\MyCSharpCode\MyCodeLibrary):

cd MyCSharpCode\MyCodeLibrary

cd C:\MyCSharpCode\MyCodeLibrary

要将该源代码文件编译为名为 MyCodeLibrary.dll 的单文件程序集,请指定以下命令集:

csc /t:library /out:MyCodeLibrary.dll simpleType.cs

此时,您应当在应用程序目录中具有一个全新的 .NET 代码库,如图 2 所示。


图 2. 新的 .NET 代码库

当在命令行编译多个 C# 文件时,可以分别列出每个文件 — 如果您希望编译包含在单个目录中的 C# 文件的子集,则这可能有所帮助。假设我们已经创建了另外一个名为 asmInfo.cs 的 C# 代码文件(保存在同一目录中),它定义了下列程序集级别属性以描述我们的代码库:

// asmInfo.csusing System;using System.Reflection;// A few assembly level attributes.[assembly:AssemblyVersion("1.0.0.0")][assembly:AssemblyDescription("Just an example library")][assembly:AssemblyCompany("Intertech Training")]

要只编译 simpleType.cs 和 asmInfo.cs 文件,请键入:

csc /t:library /out:MyCodeLibrary.dll simpleType.cs asmInfo.cs

正如您可能希望的那样,csc.exe 支持通配符表示法。因而,要编译单个目录中的所有文件,请仅将 *.cs 指定为输入选项:

csc /t:library /out:MyCodeLibrary.dll *.cs

使用 /recurse 指定子目录

在创建应用程序时,您肯定喜欢为您的项目创建逻辑目录结构。您可以通过将代码文件放到特定的子目录(\Core、\AsmInfo、\MenuSystem 等等)中对它们进行组织,而不是将多达 25 个文件转储到名为 myApp 的单个目录中。尽管我们的当前示例只包含几个文件,但假设您将 AsmInfo.cs 文件

  • 下一篇资讯: C#中调用Windows API的要点
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号