2008年11月12日 星期三

.NET 如何解決 DLL Hell

以下節錄自「別再掉進DLL地獄的陷阱裡(DLL Hell)~.NET解決之道
  1. The .NET Framework NET Assembly 自我描述與版本管理功能讓 zero-impact 的部署安裝成為可能,同時也終結了DLL Hell。

  2. Application-Private Assemblies (or 被隔離的 assembly) 只能被一個應用程式所使用 - 它不會被其他的應用程式所影響。 隔離的 assembly 讓程式開發者對應用程式有著絕對的控制權,開發好的Application-Private Assemblies只要部署在和應用程式同一目錄即可。

  3. 透過Side by side execution的技術,應用程式只要安裝成功之後,就不用擔心DLL更新版本,或規格的改變, 它允許 一個 assembly 的多個版本在一個機器上同時被安裝並執行, 而且每一個應用程式都可以要求和不同的 Assembly 版本繫結。

  4. The .NET Framework 紀錄應用程式版本資訊,並在執行應用程式時使用此資訊載入應用程式所需依賴的正確版本的 Assemblies。

寫得還不錯的一篇文章,更詳細的內容可以去參考原文囉。

其他參考資料
  1. Josh's Sky- New M Life - DLL Hell

  2. .NET with "DLL HELL"

沒有留言:

張貼留言