1
我有第三方C++/CLR程序集。當我右鍵單擊dll時,版本選項卡顯示5.32.1,但ILSpy中的元信息顯示5.0.0時。爲什麼這種差異?哪一個是正確的?爲什麼windows文件版本與C++/CLR程序集的實際彙編版本不同
我有第三方C++/CLR程序集。當我右鍵單擊dll時,版本選項卡顯示5.32.1,但ILSpy中的元信息顯示5.0.0時。爲什麼這種差異?哪一個是正確的?爲什麼windows文件版本與C++/CLR程序集的實際彙編版本不同
它在Windows資源管理器的屬性選項卡中顯示的文件版本對應於.NET程序集AssemblyInformationalVersion
屬性。 AssemblyVersion
是一個單獨的獨立的事情。
當然,兩者中的任何一個都比另一個更正確,開發者可以獨立設置它們。
對於AssemblyVersion
目前的做法似乎大致是「具有相同major.minor版本的程序集應該是兼容的」,但是沒有任何東西真的強制執行這個規則。
必要的校正:其實,當前CLR組件結合執行的政策是,整個集的版本應該匹配,以可加載的,所以兼容的組件應該有相同集版本。更多的話題:What are differences between AssemblyVersion, AssemblyFileVersion and AssemblyInformationalVersion?
當我使用代碼庫標籤的版本,我知道它使用AssemblyVersion來匹配和加載文件,否則失敗。 – user236215
我;我遇到了問題,當我依賴AssemblyInformationalversion在我的配置文件加載文件....並失敗。唉,它的微軟.. – user236215
是的,當你引用一個.NET程序集,你可能會說你想要一個特定的版本 – Vlad