• 命令行上使用 csc.exe 生成DLL文件


    原文出自MSDN:http://msdn.microsoft.com/zh-cn/library/78f4aasd.aspx

    可以通过在命令行上键入 C# 编译器的可执行文件 (csc.exe) 的名称来调用 C# 编译器。如果您使用“Visual Studio 命令提示”(以“开始”菜单上“Visual Studio 工具”下的快捷方式提供),则系统已为您设置好所有必要的环境变量。否则,必须调整路径,以便使 csc.exe 可从计算机上的任何子目录中调用。如果不使用“Visual Studio 命令提示”,则必须运行 vsvars32.bat 以设置适当的环境变量来支持命令行生成。有关 vsvars32.bat 的更多信息,请参见如何:设置环境变量

    如果您使用的计算机只安装有 Windows 软件开发工具包 (SDK),则可在使用“SDK 命令提示”(可通过“Microsoft .NET Framework SDK”菜单选项访问)时在命令行上使用 C# 编译器。

    若要在开发环境中生成,请参见如何:准备和管理生成

    也可以使用 MSBuild 通过编程方式生成 C# 程序。有关更多信息,请参见 MSBuild

    csc.exe 可执行文件通常位于系统目录下的 Microsoft.NET\Framework\<version> 文件夹中。根据每台计算机上的确切配置,此位置可能有所不同。如果计算机上安装有 .NET Framework 的多个版本,则计算机上将存在此可执行文件的多个版本。有关此类安装的更多信息,请参见安装 .NET Framework 的多个版本

    本主题涵盖以下内容:

    命令行语法规则

    命令行示例

    C# 编译器和 C++ 编译器输出之间的差异

    在解释操作系统命令行上给出的参数时,C# 编译器使用下列规则:

    • 参数用空白分隔,空白可以是一个空格或制表符。

    • ^ 字符 (^) 未被识别为转义符或者分隔符。该字符在被传递给程序中的 argv 数组前,由操作系统的命令行分析器进行处理。

    • 无论其中是否包含空白,带双引号的字符串 ("string") 均被解释为单个参数。带引号的字符串可以嵌入在参数内。

    • 前面有反斜杠的双引号 (\") 被解释为原义双引号字符 (")。

    • 反斜杠按其原义解释,除非它们紧位于双引号之前。

    • 如果偶数个反斜杠后跟双引号,则每对反斜杠中有一个反斜杠放置在 argv 数组中,而双引号被解释为字符串分隔符。

    • 如果奇数个反斜杠后跟双引号,则每对反斜杠中有一个反斜杠放置在 argv 数组中,而双引号由剩余那个反斜杠进行“转义”。这会将双引号字符 (") 添加到 argv 中。

    • 编译 File.cs 以产生 File.exe:

      csc File.cs 
    • 编译 File.cs 以产生 File.dll:

      csc /target:library File.cs
    • 编译 File.cs 并创建 My.exe:

      csc /out:My.exe File.cs
    • 通过使用优化和定义 DEBUG 符号,编译当前目录中的所有 C# 文件。输出为 File2.exe:

      csc /define:DEBUG /optimize /out:File2.exe *.cs
    • 编译当前目录中的所有 C# 文件,以生成 File2.dll 的调试版本。不显示任何徽标和警告:

      csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs
    • 将当前目录中的所有 C# 文件编译为 Something.xyz(一个 DLL):

      csc /target:library /out:Something.xyz *.cs

    没有任何对象 (.obj) 文件是由于调用 C# 编译器而创建的;输出文件是直接创建的。因此,C# 编译器不需要链接器。

  • 相关阅读:
    advisor调优工具优化sql(基于sql_id)
    关于等待事件cursor: pin S
    队列等待之enq: TX
    HTML5+CSS3从入门到精通 中文pdf完整版[229MB] 下载
    unity 控制透明度
    unity 限制模型移动的边界
    unity监测按下键的键值并输出+unity键值
    unity EventTrigger与模型
    wpf 获取桌面上的鼠标位置
    unity 代码更换ugui中image的关联素材
  • 原文地址:https://www.cnblogs.com/myssh/p/1517211.html
Copyright © 2020-2023  润新知