Compiler.Compile(String[], String[], String, String[], IDictionary) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將給定的 C# 原始碼編譯成指定的目標檔案。
public:
static cli::array <Microsoft::CSharp::CompilerError ^> ^ Compile(cli::array <System::String ^> ^ sourceTexts, cli::array <System::String ^> ^ sourceTextNames, System::String ^ target, cli::array <System::String ^> ^ imports, System::Collections::IDictionary ^ options);
public static Microsoft.CSharp.CompilerError[] Compile(string[] sourceTexts, string[] sourceTextNames, string target, string[] imports, System.Collections.IDictionary options);
static member Compile : string[] * string[] * string * string[] * System.Collections.IDictionary -> Microsoft.CSharp.CompilerError[]
Public Shared Function Compile (sourceTexts As String(), sourceTextNames As String(), target As String, imports As String(), options As IDictionary) As CompilerError()
參數
- sourceTexts
- String[]
一個型別字串陣列,每個陣列都包含 C# 程式碼。
- sourceTextNames
- String[]
一個型別字串陣列,包含每個 sourceTexts 的檔案名稱。
- target
- String
輸出檔案名稱。 此為必填引數。
- imports
- String[]
一個類型字串陣列,並附有可參考的檔案。
- options
- IDictionary
編 IDictionary 譯器選項。
傳回
以型別 CompilerError為 的陣列回傳診斷訊息。 若陣列為空或所有元素皆為警告,則編譯成功。
例外狀況
備註
參數中的 sourceTexts 每個字串相當於單一的原始檔案。 至少必須有一個 sourceTexts 元素。
參數中的 sourceTextNames 檔名用於編譯器診斷與除錯資訊。 陣列是必須的,但可以透過指令 #line 在本地覆寫。 陣列的元素數必須與 sourceTexts 參數相同。
imports參數與編譯器選項相同/reference。 這個參數可以是 null。
參數 options 的鍵是編譯器選項的簡短形式。 價值即為該選擇權所期望的價值。 參數可以是 optionsnull。 部分編譯器選項無法被識別。 下表顯示已識別的選項與數值。
| 鍵名稱 | Usage |
|---|---|
addmodule |
此組件中應包含的模組列表。 模組名稱必須以垂直條或管狀字元分隔。 值必須為類型 String。 請參見 -addmodule(C# 編譯器選項)。 |
baseaddress |
圖書館的基地地址。 值必須為類型 UInt32。 參見 -baseaddress (C# 編譯器選項)。 |
bugreport |
產生錯誤報告檔案。 值必須為類型 String。 參見 -bugreport(C# 編譯器選項)。 |
checked |
將預設表達式評估設為勾選(或未勾選)。 值必須為類型 Boolean。 詳見 -checked (C# 編譯器選項)。 |
d |
分號分隔符號列表。 值必須為類型 String。 參見 -define (C# 編譯器選項)。 |
debug |
輸出時會發出除錯資訊。 值必須為類型 Boolean。 無法指定全或僅 pdb。 請參見 -debug(C# 編譯器選項)。 |
doc |
檔案名稱用來放置 XML 註解。 值必須為類型 String。 請參見 -doc(C# 編譯器選項)。 |
filealign |
PE段對齊尺寸。 值必須為類型 UInt32。 請參見 -filealign(C# 編譯器選項)。 |
incr |
啟用增量重建。 值必須為類型 Boolean。 |
lib |
在尋找模組與參考組件時,提供額外的搜尋路徑。 值必須為類型 String。 參見 -lib(C# 編譯器選項)。 |
linkres |
將一個管理資源連結到組裝裝置。 值必須為類型 String。 參見 -linkresource(C# 編譯器選項)。 |
m |
輸入以搜尋 Main 方法。 值必須為類型 String。 參見 -main(C# 編譯器選項)。 |
nostdlib |
不要自動引用 mscorlib.dll。 值必須為類型 Boolean。 參見 -nostdlib(C# 編譯器選項)。 |
nowarn |
分號分隔的警告數字清單,請勿報告。 值必須為類型 String。 參見 -nowarn(C# 編譯器選項)。 |
o |
啟用編譯器優化功能。 值必須為類型 Boolean。 請參見 -optimize(C# 編譯器選項)。 |
r |
參考的集合。 值必須是 String 型別。 若指定多個組件,檔名必須以垂直條或管狀字元分隔。 參見 -reference(C# 編譯器選項)。 |
res |
嵌入一個受管理資源。 值必須為類型 String。 請參見 -resource(C# 編譯器選項)。 |
target |
輸出檔案目標類型,以下之一為:「library」、「exe」、「winexe」或「module」。 值必須為類型 String。 參見 -target(C# 編譯器選項)。 |
unsafe |
允許不安全的結構。 值必須為類型 Boolean。 參見 -unsafe (C# 編譯器選項)。 |
w |
警告等級(0-4)。 值必須為類型 String。 請參見 -warn(C# 編譯器選項)。 |
warnaserror |
將警告診斷報告為錯誤。 值必須為類型 Boolean。 請參見 -warnaserror(C# 編譯器選項)。 |
win32icon |
Win32 自動產生的 Win32 資源圖示。 值必須為類型 String。 請參見 -win32icon (C# 編譯器選項)。 |
win32res |
Win32 資源檔案。 值必須為類型 String。 請參見 -win32res(C# 編譯器選項)。 |