簡體   English   中英

如何通過 msi 安裝更新特定文件

[英]How to update specific files via msi installation

我想做一個可以是全新安裝和更新安裝的安裝。 當它被用作更新安裝時,我希望無論版本和修改日期時間如何,都可以更新一些文件。 有些文件永遠不會更新。

我試過的:將“REINSTALLMODE”設置為“amus”。 並將永不更新文件組件的“永不覆蓋”屬性設置為“是”。

我得到了什么:它不起作用。 那些帶有“從不覆蓋 = 是”的組件仍然以某種方式更新。

我的問題:這是對的嗎? REINSTALLMODE 的優先級高於組件的“永不覆蓋”屬性? 如何處理這個部分更新問題?

提前致謝。

MSI 具有特定的 文件替換邏輯存檔鏈接)。

我會考慮做一個主要升級

假設這些是未版本控制的文件(例如文本/xml 配置文件,而不是程序集),我將手動設置我想要始終更新的任何文件的文件版本(手動設置的版本將覆蓋已安裝的版本),而不管其他文件替換邏輯應該忽略的。

這是一個關於REINSTALLMODE=amus的文檔,其中提到“a”意味着忽略文件版本控制規則並更新所有內容。 不是你想要的。 另外,我相信 REINSTALLMODE 通常用於“修復”操作,而不是安裝/升級。

我們做這樣的事情......

  1. 安裝文件到程序文件
  2. 為所有用戶 appdata 安裝默認配置
  3. 如果未找到每用戶配置,則將默認配置復制到每用戶 appdata。

這意味着如果應用更新,默認配置會重置,但每個用戶的配置不會。 在 MSI 更新期間,所有設置等都會被保存且不會被覆蓋。

根據您嘗試“不更新”的文件,我懷疑您可能可以按照類似的方式做一些事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM