我有一個使用InstallShield 2009構建的MSI安裝,它通過在包含service exe的組件上將「.NET Installer Class」設置爲「是」來安裝.NET服務。 這個包含文件和exe的安裝包安裝OK。我創建了一個小更新MSP,它正在更新原始安裝中的服務exe文件。 當我在包含基本安裝的系統上運行MSP時,我得到錯誤1001,因爲它正嘗試在小型更新MSP安裝期間重新安裝該服務。在MSI中安裝.NET服務的最佳方法是使其可更新?
Flexera對此問題的官方迴應是,如果.NET可執行文件需要更新,那麼應該將組件「.NET Installer Class」設置爲No並創建它們自己的自定義操作。 Flexera還承認,如果您將「.NET Installer Class」設置爲「是」,那麼您不能在任何地方記錄安裝的MSP更新。從基本安裝版本發佈以來,不可能返回並更改基本安裝,並且需要根據它創建更新。我自己想出了一種解決方法,在MSP更新中包含一個自定義操作,該操作會在安裝MSP期間卸載該服務。這會得到安裝小型更新MSP,但是此解決方法不適用於從ARP卸載MSP。
我需要知道在未來安裝中解決此問題的最佳方法。你如何以這種方式安裝.NET服務,以便稍後使用小型更新MSP輕鬆更新服務?
我認爲這些選項(「控制NT服務」和「安裝NT服務」)只適用於NT服務。我過去成功地使用這些選項來安裝NT服務。我正在嘗試安裝.NET服務。這些選項是否適用於.NET服務? – Linda 2010-09-16 19:40:23
在那裏有.NET服務,這不會工作(通常當他們的安裝程序類設置不相關的依賴),但在這種情況下,它應該工作正常。 Phil Wilson的帖子(http://community.flexerasoftware.com/showthread.php?t=139667第二頁上的#6)證實了這一點。 – 2010-09-17 13:23:19