您好,登錄后才能下訂單哦!
小編給大家分享一下CLR程序集的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
一、CLR程序集教程之體系結構
程序集是一個抽象的概念,程序集是一個或多個托管模塊、資源文件和描述程序構成程序集文件的“清單”的邏輯性分組。從上面對程序集的定義的概念可知程序集主要有兩部分組成:托管模塊,資源文件。下面我們一一介紹。
1、托管模塊
托管模塊是一個標準的32們的Microsoft Windows 可移植體(PE32)文件,或是一個標準的64們Windows可移值執行體(PE32+)文件。組成托管模塊的各個部分:PE32(32位版本上)或PE32+(64位版本上)、CLR頭、元數據、中間語言(Microsoft Intermediate Laguage,MSIL)代碼。注意的事CLR(Common Language Runtime,CLR)不能直接處理托管模塊。
A、PE頭:主要是標識文件運行環境,PE32能在32位和64位的版本上運行,PE64則標識該托管模塊只能在64位的版本上運行了。
B、CLR頭:主要包含要求CLR版本、托管塊塊的入口方法(Main())等。
C、元數據:主要描述了該托管模塊把義定的類型和成員和所引用的類型和成員。
D、中間語言代碼:簡單的說是通過編譯器把源代碼生成一另一種CLR能處理的代碼。
可以說“元數據”在托管塊塊扮演著很重要的角色,編寫代碼時“智能感知”特性就是來自元數據、可以實現遠程機器上重建對象狀態等等。
2、資源文件
資源文件就比較簡單了,包含一些應用程序所用的到的一些資源:GIF、JPEG......
3、清單
主要列出了構成程序集的文件集。
二、CLR程序集教程之程序集的分類
程序集主要分為兩種類型:強命名程序集、弱命名程序集。這兩種程序集的結構上完全一致的。兩者真正的區別在于強命名程序集用發布者的公鑰/私鑰允許對程序集的惟一標識。
1、強命名程序集
一個強命名程序集包括4個重要屬性:一個文件名(無擴展名)、一個版本號、一個語言文化標識以有一個公鑰。這些屬性惟一地標識了程序集。
2、弱命名程序集
簡單地說,沒有以上強命名程序集所有的屬性就是弱命名程序集.
三、CLR程序集教程之程序集的部署
程序集部署主要分為:私有部署和全局部署。強命名程序集可以私有部署,也可以全局部署,而弱命名程序集只能私有部署。
以上是“CLR程序集的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。