DLL地獄

在電腦運算領域 ， DLL地獄 （ DLL Hell ） 指Microsoft Windows系統中 ， 因爲 - { zh: 動態鏈接庫; zh - hans: 動態鏈接庫; zh - hant: 動態鏈接庫; zh - hk: 動態連結函數庫; zh - mo: 動態連結函數庫; zh - tw: 動態連結函式庫; } - （ DLL ） 的版本或相容性的問題而造成軟件無法正常執行 。 Windows早期並沒有很嚴謹的DLL版本管理機制 ， 以致經常發生安裝了某軟件後 ， 因爲其覆蓋了系統上原有的同一個DLL文件 ， 而導致原有可運行的程式無法運行 。 但還原回原有的DLL文件之後 ， 新安裝的軟件就無法運行 。 若影響到系統所使用的重要DLL時也可能讓系統容易死機甚至無法正常啓動 。 在一般情況下 ， 開發時修改了類中的成員變量的大小或者改變虛函數的個數以及順序會觸發DLL地獄 。 如果DLL重新發布時類成員 （ 虛函數表也屬於類成員 ） 的地址發生變化 ， 那也會觸發DLL地獄 。