大家還是要常用用csc,個人感覺有時vs有不少不太方便的東西。
C:/>csc /help |more
Microsoft (R) Visual C# 編譯器版本7.00.9254 [CLR version v1.0.2914]
版權所有 (C) Microsoft Corp 2000-2001。保留所有權利。
Visual C# 編譯器選項
- 輸出文件 -
/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: 設置警告等級 (0-4) (縮寫: /w)
/nowarn:<警告列表> 禁用指定的警告信息
/reference:<文件列表> 從指定的程序集文件引用元數據 (縮寫: /r)
/addmodule:<文件列表> 將指定的模塊鏈接到此程序集中
- 資源 -
/win32res:<文件> 指定 Win32 資源文件 (.res)
/win32icon:<文件> 使用該圖標輸出
/resource:<資源信息> 嵌入指定的資源 (縮寫: /res)
/linkresource:<資源信息>將指定的資源鏈接到此程序集中 (縮寫: /linkres)
- 代碼生成 -
/debug[+|-] 發出調試信息
/debug:{full|pdbonly} 指定調試類型(“full”是默認類型,可以將調試程序
附加到正
在運行的程序)
/optimize[+|-] 啟用優化 (縮寫: /o)
/incremental[+|-] 啟用增量編譯 (縮寫: /incr)
- 錯誤和警告 -
/warnaserror[+|-] 將警告視為錯誤
/warn: 設置警告等級 (0-4) (縮寫: /w)
/nowarn:<警告列表> 禁用指定的警告信息
- 語言 -
/checked[+|-] 生成溢出檢查
/unsafe[+|-] 允許“不安全”代碼
- 雜項 -
@<文件> 讀取響應文件以獲得更多選項
/help 顯示此用法信息 (縮寫: /?)
/nologo 取消編譯器版權信息
/noconfig 不要自動包含 CSC.RSP 文件
- 高級 -
/baseaddress:<地址> 要生成的庫的基址
/bugreport:<文件> 創建一個“錯誤報告”文件
/codepage: 指定打開源文件時要使用的代碼頁
/utf8output UTF-8 編碼的輸出編譯器消息
/main:<類型> 指定包含入口點的類型(忽略所有其他可能的入口點)
(縮寫:
/m)
/fullpaths 編譯器生成完全限定路徑
/filealign: 指定用於輸出文件節的對齊方式
/nostdlib[+|-] 不引用標准庫 (mscorlib.dll)
/lib:<文件列表> 指定要在其中搜索引用的附加目錄