概念
每一程式集,無論是靜態的還是動態的,均包含描述該程式集中各元素彼此如何關聯的數據集合。程式集清單就包含這些程式集元數據。程式集清單可以存儲在具有 Microsoft 中間語言 (MSIL) 代碼的 PE 檔案(.exe 或 .dll)中,也可存儲在只包含程式集清單信息的獨立 PE 檔案中。
對於有一個關聯檔案的程式集,該清單將被合併到 PE 檔案中以構成單檔案程式集。您可以創建有獨立的清單檔案,或清單被合併到同一多檔案程式集中某一 PE 檔案的多檔案程式集。
程式集清單功能
每一程式集的清單均執行以下功能:
* 枚舉構成該程式集的檔案。
* 控制對該程式集的類型和資源的引用如何映射到包含其聲明和實現的檔案。
* 枚舉該程式集所依賴的其他程式集。
* 在程式集的使用者和程式集的實現詳細信息的使用者之間提供一定程度的間接性。
* 呈現程式集自述。
程式集清單內容
下表顯示了在程式集清單中包含的信息。前四項(程式集名稱、版本號、區域性和強名稱信息)構成了程式集的標識。
信息 :說明
程式集名稱:指定程式集名稱的文本字元串。
版本號:主版本號和次版本號,以及修訂號和內部版本號。公共語言運行庫使用這些編號來強制實施版本策略。
區域性:有關該程式集支持的區域性或語言的信息。此信息只套用於將一個程式集指定為包含特定區域性或特定語言信息的附屬程式集。(具有區域性信息的程式集被自動假定為附屬程式集。)
強名稱信息:如果已經為程式集提供了一個強名稱,則為來自發行者的公鑰。
程式集中所有檔案的列表: 在程式集中包含的每一檔案的散列及檔案名稱。請注意,構成程式集的所有檔案所在的目錄必須是包含該程式集清單的檔案所在的目錄。
類型引用信息: 運行庫用來將類型引用映射到包含其聲明和實現的檔案的信息。該信息用於從程式集導出的類型。
有關被引用程式集的信息: 該程式集靜態引用的其他程式集的列表。如果依賴的程式集具有強名稱,則每一引用均包括該依賴程式集的名稱、程式集元數據(版本、區域性、作業系統等)和公鑰。
通過在代碼中使用程式集屬性,您可以添加或更改程式集清單中的一些信息。您可以更改版本信息和信息性屬性,包括商標、著作權、產品、公司和信息性版本。