2012-07-18 187 views
3

我正在爲小型Windows應用程序使用高級安裝程序專業版。高級安裝程序啓動操作

我想知道是否可以在安裝程序執行並且產品已安裝(並且是最新版本)時運行自定義操作?

通常,當您運行安裝程序時,您會收到「已安裝另一個版本產品」消息,或者什麼也沒有發生。從我所瞭解的MSI自動完成這個操作,但我希望有一些方法可以解決它,因爲Advanced Installer可以將MSI包裝到它自己的exe文件中。

我想要做的是啓動應用程序,如果它已經安裝。在正常安裝完成後,我已經自動啓動應用程序,但是我希望安裝程序在運行時始終啓動應用程序。

回答

3

消息「已安裝的另一個版本產品」僅在開發階段出現,您的用戶將永遠不會看到此消息。更確切地說,當您安裝了1.0.0版本的產品時,會出現此消息,而不是再添加一個文件,重新構建MSI並嘗試重新安裝,版本爲1.0.0。

在這種情況下,您有兩個軟件包具有不同的軟件包代碼,但具有相同的產品代碼和版本,因此您可以看到上述軟件包。

您的用戶永遠不會有機會運行兩個具有相同版本的不同軟件包,因爲他們有權訪問正式版本,因此他們不會看到該消息。

他們將看到的實際上是維護對話框,即修改/修復/刪除產品的選項。

要在每次啓動應用程序時再次啓動應用程序,您可以在InstallUISequence開始下的「啓動文件」或「打開URL」預定義自定義操作的自定義操作頁面中設置啓動主可執行程序,於:

安裝

這個確切的條件將使如果應用程序已經被安裝在機器上的自定義操作只執行。

但是,MSI不會關閉,所以用戶仍然會看到維護對話框。

+0

工作完美,謝謝! – Theodor 2012-07-18 15:49:06