共用方式為


Compiler.Compile(String[], String[], String, String[], IDictionary) 方法

定義

將指定 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 類型的陣列傳回。 若陣列為空白或所有項目皆為警告,則編譯便會成功。

例外狀況

sourceTextsnull

-或-

sourceTextNamesnull

-或-

targetnull

sourceTexts 是空陣列。

-或-

sourceTextNamessourceTexts 的大小不同。

備註

參數中的每個 sourceTexts 字串都相當於單一原始程序檔。 至少必須有一個專案 sourceTexts

參數中的 sourceTextNames 檔名會用於編譯程式診斷和偵錯資訊。 數位是必要的,但可以使用 指示詞在 #line 本機覆寫。 陣列的元素 sourceTexts 數目必須與參數相同。

參數 imports/reference 編譯程序選項相同。 這個參數可以是 null

options針對 參數,索引鍵是編譯程式選項的簡短形式。 值是選項所需的值。 參數 options 可以是 null。 無法辨識某些編譯程序選項。 下表顯示已辨識的選項和值。

金鑰名稱 使用方式
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# 編譯程式選項)

適用於

另請參閱