C#环境变量设置步骤:
在桌面右击[我的电脑]->[属性]->[高级]->[环境变量] 在下面的系统变量栏点击“新建” 变量名输入“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:<文件列表> 指定要在其中搜索引用的附加目录
|