2010-10-02 79 views
0

我有我安裝並註冊並出現在GAC(c:\ windows \ assembly)中的第三方.net DLL。我能夠在我的開發和測試環境中成功訪問GAL,但不能在生產環境中使用。無法從C#代碼訪問GAC

我的web服務是用C#.Net,.Net 2.0框架編寫的。我只能假定問題發生在Assembly.LoadWithPartialName()被調用的行期間

我的開發環境是Windows XP Pro;測試是Windows Server 2003;生產是Windows Server 2003.測試和生產之間的唯一區別是生產通過https運行,而測試在http中運行。是否有可能存在其他權限錯誤?

我甚至嘗試將DLL導入到項目中,但沒有成功的運氣。

任何幫助或見識都非常感謝!

+0

HTTPS會導致各種奇怪的事情。你確實需要確保它也在測試中工作。 – 2010-10-02 00:35:48

+0

你得到的錯誤是什麼?您的產品是否也具有不同的.Net Trust權限? – dbones 2010-10-02 00:51:32

+0

您不應該使用LoadWithPartialName,它已過時。改用Load。服務器有什麼特別之處?它是一個64位機器嗎?提供有關DLL的詳細信息。和郵政編碼。 – 2010-10-02 00:54:42

回答

0

好了,那就是:在服務器上的一些原因,當我安裝的組件,它運行爲「服務器應用程序」,而不是「庫應用程序」

管理工具 - >組件服務 控制檯根目錄 - >組件服務 - >計算機 - >我的電腦 - > COM +應用程序

右鍵單擊相關實用程序,然後選擇屬性。在激活下,選擇庫應用程序;然後重啓。