簡體   English   中英

經典的asp如何訪問COM-Visible類引用的.NET dll?

[英]How does classic asp access .NET dlls that are referenced by a COM-Visible class?

我有一個COM-visible dll“COMInterface.dll”,它被部署到現有應用程序的文件夾中。 我已經創建了一個測試工具,它已經驗證了這個dll的功能。

但是,當我嘗試使用經典的asp來調用這個dll的方法之一時,我得到如下消息:

MyCompany.MyProject.COMInterface(0x80070002)無法加載文件或程序集“MyCompany.Framework,Version = 2.6.4202.14897,> Culture = neutral,PublicKeyToken = null”或其依賴項之一。 該系統找不到指定的文件。

我的“COMInterface.dll”引用了許多其他dll,例如我公司的標准框架,日志記錄類等。“Framework”就是這些dll之一。

asp頁面在哪里尋找這些dll? 我猜我的線束工作,因為它是從程序文件夾運行而asp頁面是在IIS網站內。

我需要在這里使用GAC注冊嗎? 我希望不會因為我需要在那里部署很多dll而且我希望擴展應用程序而不必影響用戶機器上的核心安裝。

在此之前,請提出您的問題和建議。

[編輯]我應該指出,可以很好地創建對象。 它是導致問題的引用dll的位置。

作為一般答案,您可以使用Fusion Log Viewer來確定裝配綁定器已搜索的路徑。

有關此工具的信息,請參見http://msdn.microsoft.com/en-us/library/e74a18c4.aspx

Fusion Log Viewer將列出活頁夾探測到的所有路徑。 如果您將組件放入任何這些路徑中,它將被找到。 無論這些路徑中的任何一個是否適合您的場景,我都不太確定。

當您使用Regasm注冊dll時,您需要使用/Codebase開關來確保可以找到dll。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM