我正在嘗試爲COM Interop註冊一個DLL,並且它在我的開發計算機上工作但不是我們的測試服務器上的常見問題。我正在嘗試在VS2008中使用安裝程序&部署項目執行此操作。然後我試圖從傳統的ASP中使用這個庫。目標機器是Windows 2003 SP2,IIS6。在Visual Studio安裝和部署項目中註冊用於COM Interop的.NET DLL
具體我想通過這裏漢斯建議的方法:
Use Visual Studio Setup Project to automatically register and GAC a COM Interop DLL
哪裏,他說的「設置項目輸出引用的財產登記vsdrpCOM。」
除了這個集合之外,我還在相關項目的assemblyInfo中有[assembly:ComVisible(true)],並勾選了「註冊COM Interop」複選框。
最後,我還強烈簽名並將其添加到設置和部署項目中的GAC中。
我在ASP得到的錯誤是
Server object error 'ASP 0177 : 800401f3'
Server.CreateObject Failed
奇怪的是我可以引用註冊庫在Excel中有問題的服務器上,並能正常工作。所以它似乎被正確註冊。
有人對我可能錯過的其他事情有什麼建議嗎?
編輯:對不起更多的細節補充。
記錄你所知道的*。錯誤說的是什麼?它是什麼樣的機器?當你使用SysInterals的ProcMon時,你會看到什麼?註冊表中有什麼? – 2011-03-27 23:37:41
很抱歉,已添加更多詳情。我會看看我能否得到ProcMon和一些輸出。 – mutex 2011-03-27 23:46:44
如果您可以使用Excel創建它,那麼安裝不是問題。你沒有談論機器,它運行的是64位操作系統嗎? – 2011-03-27 23:53:59