共用方式為


組件概觀

組件是使用 .NET Framework 撰寫程式的基礎零件。組件可以執行以下功能:

  • 它包含 Common Language Runtime 執行的程式碼。在可移植執行檔 (PE) 中的 Microsoft Intermediate Language (MSIL) 程式碼,如果沒有與組件資訊清單 (Assembly Manifest) 關聯將不會被執行。請注意,每個組件只能擁有一個進入點 (Entry Point) (也就是 DllMainWinMainMain)。

  • 它可構成安全性界限。組件是被要求和授予使用權限的單位。如需安全性界限套用至組件的詳細資訊,請參閱組件安全性考量

  • 它可構成型別界限。每種型別的識別 (Identity) 都包括該型別所在之組件的名稱。在一個組件範圍中載入的型別 MyType 與在另一個組件範圍中載入的型別 MyType 是不相同的。

  • 它可構成參考範圍界限。組件的資訊清單含有用來解析型別和滿足資源要求的組件中繼資料。它會指定公開於組件之外的型別和資源。資訊清單也會列舉它所依賴的其他組件。

  • 它可構成版本界限。組件是 Common Language Runtime 中最小的可訂版本單位;在同一組件中的所有型別和資源都當做一個單位編訂版本。組件的資訊清單會描述您對任何相依組件所指定的版本相依性。如需有關版本的詳細資訊,請參閱組件版本控制

  • 它可構成部署單位。當應用程式啟動時,只有這個應用程式一開始所呼叫的組件必須存在。其他組件 (例如當地語系化資源或含有公用程式類別的組件) 可視需要擷取。這樣可以讓應用程式在一開始被下載時保持簡單、輕便。如需部署組件的詳細資訊,請參閱部署應用程式

  • 它是支援並存執行的單位。如需執行組件多個版本的詳細資訊,請參閱組件和並存執行

組件可以是靜態的,也可以是動態的。靜態組件可以包括 .NET Framework 型別 (介面和類別) 以及組件的資源 (點陣圖、JPEG 檔案、資源檔等)。靜態組件存放在磁碟上的可移植執行檔 (PE) 中。您也可以使用 .NET Framework 建立直接從記憶體執行而且在執行前並未儲存至磁碟的動態組件。您可以在動態組件執行之後將它們儲存到磁碟。

建立組件有好幾種方式。您可以使用過去用來建立 .dll 或 .exe 檔案的開發工具,例如 Visual Studio 2005。您也可以使用 .NET Framework SDK 提供的工具,使用其他開發環境中建立的模組來建立組件。您也可以使用 Common Language Runtime API (例如 Reflection.Emit) 來建立動態組件。

請參閱

概念

組件安全性考量
組件版本控制
組件和並存執行

其他資源

Common Language Runtime 中的組件
部署 .NET Framework 應用程式