![](/img/trans.png)
[英]How to move third party dlls from bin folder to another folder in ASP.NET Web Forms project?
[英]How to force an ASP.NET Web app to use Oracle DLLs in the BIN folder?
因此,由於某些語法更改,我有一個需要 Oracle 19c 客戶端 (4.122.19.1) 的 Web 應用程序,而我們的 Dev IIS 服務器有一個較舊的 4.121.2.0 客戶端。
無論如何,我將所有我聽說過的正確支持 dll 放在應用程序的 Bin 目錄中,從我所有的研究來看,這些是:oci.dll ociw32.dll Oracle.ManagedDataAccess.dll Oracle.Web.dll orannzsbb19 .dll oraocci19.dll oraocci19d.dll oraociei19.dll oraons.dll OraOps19.dll
這在我的 PC 上在 Visual Studio 中完美運行。 當我部署到 Dev IIS 服務器時(應用程序池在啟用 32 位中運行,因為我的 PC 以 32 位運行 IISExpress)有各種 Oracle 連接錯誤。
現在,在進程資源管理器中,在我的 PC 上,我查看了 IISExpress,我可以看到它加載了上述所有 dll,盡管是從 GAC 加載的,因為我在本地安裝了這個客戶端。 然而,在開發服務器 Process Explorer 上,在我的 W3WP.exe 進程下,我只看到 Oracle.ManagedDataAccess.dll 和 Oracle.Web.dll,但沒有一個支持 DLLS。 我相當確定缺少這些的事實,尤其是 OraOps19.dll,是問題所在。
我在 web.config 中使用了“DLLPath”,這沒什么區別。 我總是被告知 Asp.Net總是首先嘗試從 BIN 加載。 然而,在這里我相信它至少部分地忽略了它——無論是在我的 PC 中,它直接進入 GAC,還是來自 Dev IIS 服務器,它確實從 Bin 獲得了正確的 .Web 和 .ManagedDataAccess,但沒有別的。
我怎樣才能讓它忘記 Gac 並強制它在 Bin 中找到它需要的任何 Oracle 明智的東西? 謝謝
dll 被竊聽; 不允許像這樣發布對已簽名 dll 的重大更改。 解決方法:
假設這些是 100% il 代碼(不涉及 C++/clr)
現在它不再出現在 GAC 中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.