2009-09-10 113 views

回答

0

發現了問題:

通過查看日誌fuslogvw我瞭解到,OleViewer會在同一文件夾中OleViewer.exe它正在尋找裝配匹配任何組件(!)。偶然我在我運行OleViewer的文件夾中有一箇舊版本的程序集。所以我必須做的是將OleViewer.exe複製到我的程序集註冊的文件夾中。奇怪而真實!

1

COM註冊程序集的bin文件夾中是否存在依賴程序集?或者應該在GAC中的實際上不在GAC中的相關程序集?

您可能還能夠使用/ codebase開關解決您的問題,該開關將添加一個指向您程序集位置的註冊表項。

您可能還可以通過使用fuslogvw來查看當您的.NET程序集被綁定到OLE查看器時發生了什麼。

+0

我的程序集包含一個工廠類(唯一可以看到COM的類)。根據是否安裝Sharepoint 2003或Sharepoint 2007,工廠類會生成不同的通用接口實現。上面的答案讓我覺得可能問題是通常情況下,安裝SP2003或SP2007,這意味着我的程序集引用的SP程序集並不總是存在......這聽起來像是一個可能的原因嗎?感謝指針。 – Ries 2009-09-10 15:02:32

+0

是的,可能是這種情況,我不確定OLE Viewer是否會導致您的程序集並且它的相關程序集將被加載到它的進程空間下。通過指出確切的綁定失敗,fuslogvw幾乎肯定會告訴您您的想法是否正確。 – 2009-09-13 10:45:51