我使用WIX工具集中的heat util來生成一個dll的COM註冊。所有工作正常,直到只有一個產品使用該DLL。如何用Heat生成可重用的COM註冊組件?
但是,當該DLL已被其他產品註冊或被稍後安裝的產品使用時,卸載我的產品會刪除DLL註冊並中斷其他應用程序。
有沒有辦法解決這個問題?我有一個想法,使生成的組件永久,但看起來像沒有簡單的方法來實現它。這不是理想的情況,因爲如果我們的應用程序是使用該dll的opny應用程序,那麼刪除DLL註冊會更好。
另一個問題是註冊DLL改變了以前的註冊,即使它有更新的版本。它將再次破壞其他應用程序。如果已經安裝,我們希望使用從不版本。
任何人都可以推薦一個簡單的解決方案來克服所描述的問題嗎?
但是這個組件並不僅僅用在我的安裝程序中。 「產品A」是第三方。我會嘗試得到它的組件ID,但沒有很大的希望它會起作用=(。 –
問題的標題提到了一個'可重用的COM註冊組件'。當你有第三方安裝程序時,它們將不會重用你的安裝程序組件 – harper
是的,可能標題沒有詳細描述問題......對不起,但實際上我需要讓我的組件在我的產品中可重用,而其他一些產品已經使用該DLL並執行COM註冊。將dll放入共享文件夾並在卸載時將其刪除,理想情況是將我的dll從「their」中分離出來,但據我所知,由於共享的COM對象是不可能的,否則我不會問在這種情況下,你有任何解決方法的想法嗎? –