zoukankan      html  css  js  c++  java
  • CSC 命令编译cs文件

    CSC 命令编译cs文件

    编译 File.cs 以产生 File.exe: csc File.cs
    编译 File.cs 以产生 File.dll: csc /target:library File.cs  可缩写成 csc /t:library File.cs 
    编译 File.cs 并创建 My.exe: csc /out:My.exe File.cs

    默认生成的文件夹路径是C:Program FilesMicrosoft Visual Studio 10.0VC


    通过使用优化和定义 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

    编译 File.cs 以产生 File.dll: csc /target:library File.cs这个就是我们使用最多的一个命令,其实可以简单的写成csc /t:library File.cs,另外的一个写法是
    csc /out:mycodebehind.dll /t:library mycodebehind.cs,这个可以自己指定输出的文件名。
    csc /out:mycodebehind.dll /t:library mycodebehind.cs mycodebehind2.cs,这个的作用是把两个cs文件装到一个.dll文件里,很有用哦。

    首先要安装好.NET Framwork SDK环境,一般安装了vs.net工具的 都已经可以了.

    首先,我们用文本文件建一个.cs的文件 其实这个扩展名是可以自己定的,另不用.cs也是可以的,建一个文件命名为:SimpleProgram.cs 输入下面的代码

    using System;
    publicclass SimpleProgram
    {
        staticvoid Main()
        {
             Console.WriteLine(“Hello”);
             Console.ReadLine();
         }
    }

    保存,注意一下大小写,然后在命令行窗口里输入:csc SimpleProgram.cs,当然我们要首先进入文件所在目录 如果编译通过,在同一个文件夹里会出现一个SimpleProgram.exe,运行 就可以看到一个控制台程序 打印出Hello.

    接着我们讲编译多个源文件

    编译多个源文件有几种方面:1.把所有的源文件编译成一个exe文件 2.把一些文件编译成dll,一些编译成exe 然后作为一个应用程序一起使用。

    先说第一个方法:做两个.cs文件

    Program2.cs

    using System
    publicclass Program2
    {
        staticvoid Main()
        {
             Person p=new Person(“dotLive”);
             Console.WriteLine(“Our person’s nameis+p.Name);
         }
    }


    Person.cs

    using System;
    publicclass Person
    {
        privatestring name;
        public Person(string s)
        {
             name=s;
         }
        publicstring Name
        {
            get{
                return name;
             }
            set
            {
                 name=value;
             }    
         }
       }

    保存,命令行窗口中进入文件目录 输入:csc Program2.cs Person.cs   这个时候会在目录里生成一个exe文件,文件的名称跟第一个.cs的文件名相同,如果.cs文件很多的话 还有一个简单的写法:csc *.cs 就可以把当前目录里的所有.cs文件进行编译。

    现在说一下第二种方法,还是使用上面两个.cs文件

    首先输入 csc /t:library Person.cs命令 这时候会生成一个Person.dll文件,然后第二步输入命令csc Program2.cs /r:Person.dll这样就可以生成一个引用Person.dll的exe文件Program2.exe文件。

    这里出现了两个参数 /t 和 /r

    /t 是指定编译生成dll还是exe,在第一种方法中的命令csc *.cs 其实是一个简写,完整的写法是csc /t:exe *.cs,由于/t:exe是默认的选项可以不写, 还要说一句 这里的exe文件都是控制台应用程序(其他的以后再说)

    /r 的作用可以看成是引用了一个dll文件,格式可以写成csc program.cs /r:1.dll;2.dll;3.dll

    挂接多个dll,每个dll之间用分号 隔开。

    接着我们再讲一个参数 /out 这个是给可执行文件命名的 比如:csc /out:MyApp.exe Program2.cs Person.cs 这样就可以生成一个叫做MyApp.exe的可执行文件。

    最后再将一个 如果有多个.cs文件中存在Main函数要怎么办?

    首先我们在Person.cs文件的Person类里添加一个Main函数

    using System;
    publicclass Person
    {
        privatestring name;
        public Person(string s)
        {
             name=s;
         }
        publicstring Name
        {
            get{
                return name;
             }
            set
            {
                 name=value;
             }    
         }
        //新增加一个Main函数
        staticvoid Main()
        {
             Person p=new Person(“dotLive2”);
             Console.WriteLine(“Our person’s nameis+p.Name);
         }

       }

    这样一来如果按照原来的方法同时将两个文件编译进同一个exe时,便以一定会出错

    这时候我们再引入一个新的参数 /main

    在我们自己决定要使用哪个cs文件里的Main函数时可以输入命令

    csc Program2.cs Person.cs /main Program2

    就是制定了以Program2里的Main函数为程序入口点了。

  • 相关阅读:
    vsftpd的详细配置讲解
    ActiveMQ安装与配置
    Apache安装完之后再安装其他模块
    搭建 LAMP apache2.4 + php5.5 + mysql5.5/6 配置文件没有作用的问题
    LAMP apache2.4 + php5.5 + mysql5.5/6
    进制之间的转换
    Mac 常用属性
    关于颜色值透明度的设置
    关于TextView 的属性
    Android 关于软键盘
  • 原文地址:https://www.cnblogs.com/panjiayuan/p/5415566.html
Copyright © 2011-2022 走看看