2010-02-10 73 views
6

我們正在開發一個混合了.NET組件和傳統C++ COM組件的ClickOnce應用程序。是否有可能使用COM可見.NET類與免費註冊COM?

目前我們正在使用MSI(這是安裝我們的ClickOnce應用程序的先決條件)將C++ COM組件添加到用戶的計算機中,這意味着我們可以事先在用戶計算機上註冊COM對象。

我們仍然可以通過ClickOnce將更新推送到用C#編寫的應用程序的其餘部分,但更新MSI安裝的組件需要手動干預。但是,我們試圖弄清楚是否可以通過註冊免費COM來安裝C++ COM組件,也就是說它們都在同一個目錄中,並且每個組件都有一個清單文件,指定每個COM的clsid對象和接口。這意味着我們可以完全擺脫MSI。

這個link已經很好的介紹了這個話題。

我已經能夠得到一個.NET組件來加載一個C++ COM對象,但不是相反。

有誰知道這是可能的嗎?

回答

5

是的,這是可能的。您需要在清單中使用<clrClass>元素。有一個體面的如何去located here。 SDK文檔是相當悲慘的,你需要Junfeng Zhang's blog來獲得更好的背景信息。

相關問題