2014-10-09 68 views
1

我能夠成功卸載(確保=「不存在」)或安裝產品(確保=「存在」)。但是,如果我創建同一產品的新版本,它總是會返回相同的消息 - 「已安裝」。使用Powershell/DSC升級MSI

這是否意味着升級的唯一方法是卸載/安裝?

回答

2

聽起來這是你創建的MSI。請確保你changing the product code每個版本:

什麼是產品代碼在MSI包?

產品代碼是識別應用程序或產品發行版的唯一GUID;換句話說, 產品的不同版本和語言必須有不同的產品代碼。 http://msdn.microsoft.com/en-us/library/aa370854(VS.85).aspx。此外,產品代碼 可用於查詢功能狀態和產品狀態。對於 例如,安裝程序API 「MsiQueryFeatureStateEx()」 和 「MsiQueryProductState()」 等

+0

這可能實際工作。讓我試試看。 – 2014-10-09 17:37:48

+0

檢查鏈接(第一個鏈接,而不是引用中的鏈接)並查看* UpgradeCode *。通過確保使用*相同*升級代碼,它不應該作爲新產品安裝。 – briantist 2014-10-09 17:37:49

+0

你是對的 - 我唯一需要確定的是在ps1/MOF文件中使用新的ProductCode。 – 2014-10-09 17:38:36