C#环境变量配置及csc命令详解(转自cy88310)
- 在桌面右击[我的电脑]->[属性]->[高级]->[环境变量]
- 在下面的系统变量栏点击“新建”
- 变量名输入“csc”
- 变量值输入:“C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/”(也许你的机器上.net framework的版本会有所不同,因而后面的文件夹名称v2.0.50727会有不同)
- 然后在系统变量列表框中双击“Path”
- 在变量名文本框的最后面加入“;%csc%;”(注意是双引号内的内容,前后要有分号)
- 其实,有一种更简洁的方法,那就是直接编辑系统变量列表框中双击“Path”,在后面加上“;C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/;”
- 设置完环境变量,在cmd命令中输入csc.exe,测试是否成功。
csc.exe编译器常用命令:
- 命令:csc File.cs ,功能:编译 File.cs以产生 File.exe,另一种写法:csc/out:MyFile.exe File.cs,可以自定义编译生成的执行文件名称
- 命令:csc/target:library File.cs ,功能:编译 File.cs 以产生 File.dll,另一种写法:csc /target:library /out:MyFile.dll File.cs,可以自定义编译生成的库文件名称
- 命令:csc/define:DEBUG /optimize /out:File2.exe *.cs ,功能:通过使用优化和定义 DEBUG 符号,编译当前目录中所有的 C# 文件,输出为 File2.exe
- 命令:csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs ,功能:编译当前目录中所有的 C# 文件,以产生File2.dll 的调试版本,不显示任何徽标和警告
- 命令:csc /target:library /out:Something.xyz *.cs ,功能:将当前目录中所有的 C# 文件编译为Something.xyz(一个DLL)
csc.exe编译器命令详解:
编译器位置:C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/csc.exe
- 编译器选项 - - 输出文件 -
/out:<文件> 输出文件名(默认值:包含主类的文件或第一个文件的基名称)
/target:exe 生成控制台可执行文件(默认) (缩写: /t:exe)
/target:winexe 生成Windows可执行文件 (缩写: /t:winexe)
/target:library 生成库 (缩写: /t:library)
/target:module 生成能添加到其他程序集的模块 (缩写: /t:module)
/define:<符号列表> 定义条件编译符号 (缩写: /d)
/doc:<文件> 要生成的XML文档文件
/recurse:<通配符> 根据通配符规范,包括当前目录和子目录下的所有文件
/reference:<文件列表> 从指定的程序集文件引用元数据 (缩写: /r)
/addmodule:<文件列表> 将指定的模块链接到此程序集中
- 资源文件 -
/win32res:<文件> 指定Win32资源文件(.res)
/win32icon:<文件> 使用该图标输出
/resource:<资源信息> 嵌入指定的资源 (缩写: /res)
/linkresource:<资源信息> 将指定的资源链接到此程序集中 (缩写: /linkres)
- 代码调试 -
/debug[+|-] 发出调试信息
/debug:{full|pdbonly} 指定调试类型(“full”是默认类型,可以将调试程序附加到正在运行的程序)
/optimize[+|-] 启用优化 (缩写: /o)
/incremental[+|-] 启用增量编译 (缩写: /incr)
- 错误和警告 -
/warnaserror[+|-] 将警告视为错误
/warn:<n> 设置警告等级(0-4) (缩写: /w)
/nowarn:<警告列表> 禁用特定的警告消息
- 语言 -
/checked[+|-] 生成溢出检查
/unsafe[+|-] 允许“不安全”代码
- 杂项 -
@<文件> 读取响应文件以获得更多选项
/help 显示此用法信息 (缩写: /?)
/nologo 取消编译器版权信息
/noconfig 不要自动包含CSC.RSP文件
- 高级 -
/baseaddress:<地址> 要生成的库的基址
/bugreport:<文件> 创建一个“错误报告”文件
/codepage:<n> 指定打开源文件时要使用的代码页
/utf8output UTF-8编码的输出编译器消息
/main:<类型> 指定包含入口点的类型(忽略所有其他可能的入口点) (缩写: /m)
/fullpaths 编译器生成完全限定路径
/filealign:<n> 指定用于输出文件节的对齐方式
/nostdlib[+|-] 不引用标准库(mscorlib.dll)
/lib:<文件列表> 指定要在其中搜索引用的附加目录
C#环境变量配置及csc命令详解(转自cy88310)的更多相关文章
- 【Win10+eclipse+MinGW+QT安装教程】已有eclipse环境下配置QT插件出错详解
(纪念一下装了一整天濒临绝望的自己[/doge]) (以下所有下载项一律使用32位) step1:下载安装eclipse.适配的jdk.MinGW和QT 1.下载32位eclipse for c++以 ...
- centos7环境变量配置错误以至于命令不可使用
2021-07-16 问题: centos7在配置环境变量的时候少打了$,导致很多命令不能使用 解决方法: 在命令行输入: export PATH=/usr/local/sbin:/usr/local ...
- Java学习系列(一)Java的运行机制、JDK的安装配置及常用命令详解
俗话说:“十五的月亮十六圆”.那学习是不是也是如此呢?如果把月亮看成是我们的愿望,那十五便是我们所处的“高原期”,坚持迈过这个坎,我相信你的愿望终究会现实的.记得马云曾说:今天很残酷,明天更残酷,后天 ...
- 关于java环境变量配置出现javac命令无法运行的解决办法
昨天一时兴起给电脑刷了机,想着给电脑装个Win10+Linux的双系统, 结果双系统没装好,所有的东西又得重新弄一遍 今天在配置java的时候又出问题了 java,java-version运行成功了, ...
- Mac环境下配置tomcat的步骤详解
前言 相信对Java Web稍微知道一点,一般对Tomcat都不会陌生,Apache是普通服务器,本身只支持html即普通网页,可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接T ...
- widows下 python环境变量配置
widows下 python环境变量配置 便于cmd命令行操作,例如:直接进入Python解释器环境.使用pip安装模块等.
- java 环境变量配置 详解!
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JAVA JDK 环境变量配置 入门详解 - 精简归纳
JAVA JDK 环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 13 转载请注明出处!️ 目录 JAVA JDK 环境变量配置 入门详解 - 精简归纳 一.为什么j ...
- 超详干货!Linux 环境变量配置全攻略
点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! Linux环境变量配置 在自定义安装软件的时候,经常需要 ...
随机推荐
- Vue插槽slot理解与初体验 ~
一.插槽的理解 1.官网介绍 Vue 实现了一套内容分发的 API,将 <slot> 元素作为承载分发内容的出口. 2.为什么使用插槽 Vue 中有一个重要的概念-组件,可以在开发中将子组 ...
- k8s deployment controller源码分析
deployment controller简介 deployment controller是kube-controller-manager组件中众多控制器中的一个,是 deployment 资源对象的 ...
- redis学习笔记-01 string类型命令
一.set key value set joker 123456 #设定key为joker,value为123456的数据 二.keys * keys * #用于查看该数据库中所有的key值 三.se ...
- 浅析InnoDB引擎的索引和索引原理
浅析InnoDB引擎的索引和索引原理 什么是InnoDB的索引 InnoDB的索引就是一颗B+树.页是InnoDB引擎在内存和磁盘之间交换数据的基本单位,页的大小一般是16KB,页的大小可以在启动My ...
- 题解 「ZJOI2018」历史
题目传送门 Description 九条可怜是一个热爱阅读的女孩子. 这段时间,她看了一本非常有趣的小说,这本小说的架空世界引起了她的兴趣. 这个世界有 \(n\) 个城市,这 \(n\) 个城市被恰 ...
- Python中字符串常用方法
capitalize() String.capitalize() 将字符串首字母变为大写 name = 'xiaoming' new_name = name.capitalize() print(ne ...
- C++ 与 Visual Studio 2019 和 WSL(四)——库组件
C++ 与 Visual Studio 2019 和 WSL (库组件) Reference 在 C++ 项目中使用库和组件 | Microsoft Docs 演练:创建和使用自己的动态链接库 (C+ ...
- TCP三次握手四次挥手,通俗易懂版
三次握手四次挥手 三次握手 其实很好理解,三次握手就是保证双手都有发送和接受的能力.那么最少三次才能验证完成 即----> 客户端发送---服务端收到----服务端发送-- 1.客户端发送 -- ...
- 改善深层神经网络-week1编程题(Regularization)
Regularization Deep Learning models have so much flexibility and capacity that overfitting can be a ...
- 我们一起来回顾一下Synchronized关键字吧
多线程一直Java开发中的难点,也是面试中的常客,趁着还有时间,打算巩固一下JUC方面知识,我想机会随处可见,但始终都是留给有准备的人的,希望我们都能加油!!! 沉下去,再浮上来,我想我们会变的不一样 ...