2010-12-09 72 views
4

我正在開發兩個應用程序,它們都具有相同名稱,不同版本的.NET4程序集。這個程序集公開了一些COM對象。是否可以安裝這兩個應用程序,並維護這兩個程序集的COM對象?版本控制Windows COM對象

我有一些體面的.NET程序集,但沒有太多的COM。提前感謝幫助新手。

回答

4

通過對接口進行版本控制並更改CLSID(以及任何更改的接口的AND IID),可以在低級別執行COM中的版本控制。該控件的ProgID也通過添加.version數字進行版本控制。顯然,安裝路徑必須不同。

例如,要將Internet Explorer加載爲Web控件,可以創建對象「shell.explorer」以創建最新版本「shell.explorer.1」「shell.explorer.2」等。 shell.explorer控件的不同版本 - 在不同的CLSID下注冊 - 它們共享相同的VersionIndependentProgID tho,因此當應用程序試圖實例化無版本ProgID時,它會獲得最新版本。