共用方式為


/target (Visual Basic)

指定編譯器輸出格式。

/target:{exe | library | module | winexe}

備註

下表彙總 /target 選項的效果。

選項

行為

/target:exe

讓編譯器建立可執行的主控台應用程式。

如果沒有指定 /target 選項,這就是預設選項。 建立的可執行檔具有 .exe 副檔名。

除非用 /out 選項指定輸出檔名稱,否則輸出檔名會取自包含 Sub Main 程序的輸入檔名。

編譯成 .exe 檔案的原始程式碼檔中只需要一個 Sub Main 程序。 使用 /main 編譯器選項可指定哪個類別包含 Sub Main 程序。

/target:library

使編譯器建立「動態連結程式庫 (DLL)」。

建立的動態連結程式庫檔案具有 .dll 副檔名。

除非您已使用 /out 選項指定輸出檔名稱,否則將會以第一個輸入檔名稱命名。

建置 DLL 時並不需要 Sub Main 程序。

/target:module

讓編譯器產生可以加入至組件的模組。

建立的輸出檔具有副檔名 . netmodule。

.NET Common Language Runtime 無法載入不含組件的檔案。 但是,您可以使用 /reference 將這類檔案合併至組件的組件資訊清單 (Assembly Manifest) 中。

當某個模組中的程式碼參考其他模組中的內部型別時,必須使用 /reference 將這兩個模組加入組件資訊清單中。

/addmodule 選項會從模組匯入中繼資料。

/target:winexe

讓編譯器建立可執行的 Windows 應用程式。

建立的可執行檔具有 .exe 副檔名。 Windows 應用程式是從 .NET Framework 類別庫 (Class Library) 或以 Win32 API 提供使用者介面。

除非用 /out 選項指定輸出檔名稱,否則輸出檔名會取自包含 Sub Main 程序的輸入檔名。

編譯成 .exe 檔案的原始程式碼檔中只需要一個 Sub Main 程序。 當您的程式碼具有多個擁有 Sub Main 程序的類別時,請使用 /main 編譯器選項,指定哪個類別包含 Sub Main 程序

除非您指定的是 /target:module,否則 /target 會將 .NET Framework 組件資訊清單加入至輸出檔。

每一個 Vbc.exe 的執行個體 (Instance) 最多只會產生一個輸出檔。 如果您指定的編譯器選項 (如 /out 或 /target) 超過一次以上,則編譯器所處理的最後一個選項會生效。 編譯中所有檔案的相關資訊都會加入至資訊清單。 除了使用 /target:module 建立的輸出檔之外,所有輸出檔在資訊清單中都包含組件中繼資料。 請使用 Ildasm.exe (MSIL 反組譯工具) 檢視輸出檔案中的中繼資料。

/target 的簡短形式為 /t。

若要在 Visual Studio IDE 中設定 /target

  1. 在 [方案總管] 中選取專案。 在 [專案] 功能表上,按一下 [屬性]。 如需詳細資訊,請參閱專案設計工具簡介

  2. 按一下 [應用程式] 索引標籤。

  3. 修改 [應用程式類型] 方塊中的值。

範例

下列程式碼會編譯 in.vb,並建立 in.dll:

vbc /target:library in.vb

請參閱

參考

/main

/out (Visual Basic)

/reference (Visual Basic)

/addmodule

/moduleassemblyname

編譯命令列範例 (Visual Basic)

概念

組件和全域組件快取 (C# 和 Visual Basic)

其他資源

Visual Basic 編譯器