2011-05-23 104 views
3

我遇到第三方應用程序加載VB6 Active X DLL擴展集合的情況。這些擴展的唯一約束是它們包含一組預定義的IDispatch函數。.NET COM可見DLL與Active X DLL

是否有可能實現一個COM可見的.NET DLL,可以交替使用來代替Active X DLL,還是有Active X DLL和.NET可見COM DLL之間的根本區別,可以防止這種情況?

+0

是的,只有一種IDispatch。 – 2011-05-24 06:02:32

回答

2

完全可以在.NET中構建完整的ActiveX對象。這是可能的(儘管不是非常有可能),應用程序將去QI除了IDispatch之外的東西,但最好的辦法就是嘗試一下。請記住,使用.NET來處理這種類型的事件會帶來性能影響和並行的框架版本影響。

+0

感謝您的回覆Eric。你能解釋一下「QI除了IDispatch之外的意思」是什麼意思嗎?我目前所擁有的標準.NET對象標記爲COM可見,我已經成功地通過Powershell創建和使用。如果應用程序正在查詢IDispatch,是否應該找到它?我要問的原因是,這不是作爲現有形式的延伸。 – 2011-05-24 05:04:24