2016-11-23 30 views
0

我使用InstallShield創建了MSI並安裝了一個軟件包。 下一步我創建了一個更新。在MSI文件的屬性頁上,我必須設置與原始版本相同的「修訂版號」,否則我會收到消息:運行更新MSI沒有任何影響

此產品的其他版本已安裝。此版本的安裝無法繼續。要配置礦石刪除此產品的現有版本,使用添加/刪除程序在控制面板

上但是,一旦我加倍對新的MSI單擊系統實際運行的舊保存在C:\ WINDOWS \安裝程序。無論如何強迫系統運行新的MSI文件? (我改變了版本號,但保留所有其他UID相同)

順便說一句,當我刪除註冊表中的「LocalPackage」條目然後系統運行新的MSI。


現在我試着創建新的安裝。我改變了主要版本和產品版本。我收到錯誤:

此計算機上已安裝此應用程序的較新版本。如果您想安裝此版本,請先卸載新版本。

+0

這一個解決了問題http://stackoverflow.com/questions/12337860/update-an-existing-installation-using-installshield-lecopy guid從/常規信息/「產品代碼」到/升級PAth /升級代碼 複製GUID從/常規信息/「產品代碼」到/常規信息/升級代碼 常規按鈕「...」在/常規信息/產品代碼中生成新GUID 可選設置。 In/Upgrade PAth /升級代碼 禁用最大版本 啓用最小版本,例如,您可以將版本0.0.0.1設置爲最小值。 禁用languale依賴關係 – sergman

回答

0

定義產品是否安裝的是ProductCode。一個MSI文件的版本號通常被稱爲PackageCode。 PaCckageCode和ProductCode必須與創建主要升級不同。

我不會建議刪除本地包MSI。這用於維護和卸載。

+0

查看升級表以查看MSI是否支持相同版本的升級也很重要。如果不是,您還需要更新ProductVersion「x.y.z」。 – jbudreau

+0

如果我這樣做了包,但在程序和功能中,兩個包將顯示爲同名。 – sergman

+0

這意味着你幾乎在那裏,除了你可能沒有正確配置主要升級。無論是原始的還是每個用戶,新的都是每臺機器(反之亦然)/ – PhilDW

相關問題