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:<檔案清單> 指定要在其中搜尋引用的附加目錄