1. 程式人生 > >64位win2008下IIS未開啟32位支援導致DLL無法載入問題

64位win2008下IIS未開啟32位支援導致DLL無法載入問題

部署一個WEB專案,在本機、本地伺服器都沒有問題,但部署到遠端伺服器以後,提示有個DLL無法載入:

Server Error in '/' Application.

Could not load file or assembly 'Common.Component.Repository' or one of its dependencies. An attempt was made to load a program with an incorrect format.

首先肯定的是,系統聲稱無法載入的DLL千真萬確存在

其次從本機、本地伺服器都沒有問題推測,似乎最有可能的原因是該遠端伺服器的環境有問題。但是,遠端伺服器是裝了.NET4.5.2的,並且跑其他WEB專案都沒問題。WEB專案所對應的應用程式池也是4.0,排除選了2.0的原因。

後來該WEB專案的開發者在IIS的應用程式池上開啟了32位支援,問題解決。原來,遠端伺服器的是64位的WIN SERVER 2008。

開啟32位支援的方法是:

選中WEB專案對應的應用程式池,右鍵,高階設定,Enable 32-bit Application = True。

網上類似文章