2010-02-01 59 views
0

從COM Interop庫中加載託管庫中的類時遇到了問題。.NET COM與其他庫的引用互操作

基本上我有一些非託管C++代碼和用C#編寫的COM Interop庫。最後是由含有類COM互操作庫引用的第三個庫:

public class MyClass{ 
    public MyClass(){} 
} 

我希望做的是從我的託管C++代碼,請致電互操作庫 的C++代碼的函數不需要知道第三個庫的存在,它只在Interop中使用。 (){ MyClass _class = new MyClass(); }

由於某種原因,Init中的這一行失敗了「MyClass _class = new MyClass();」,而且我沒有得到非常有用的錯誤消息,我只需要在這些輸出中輸入一些窗口: 「在DotNet_Com_Call.exe 0x7c812afb第一次機會異常:微軟C++異常:[重新拋出]在存儲器位置00000000 ..」

和的HRESULT 「HRESULT HR = pDotNetCOMPtr->初始化();」在我的C++代碼行是「系統找不到指定文件」

我是新來的COM所以如果任何人有任何意見或指針讓我不斷前進的正確的方向,我會很感激的,

謝謝

+0

我會看看Init實際上在做什麼 - 你看到的錯誤可能是從Init返回,代表調用失敗的調用。 – Ruddy 2010-02-01 15:32:48

回答

0

沒關係,我想我只是自己想出來的。看起來Interop DLL和interop引用的第三個DLL需要位於同一個目錄中。