2010-05-28 152 views
0

我已經使用VS安裝項目創建了部署文件(msi)。這個msi文件在桌面上創建了一個快捷方式。在部署過程中,我添加了一些預定義的數據文件(.xml/text)。應用程序快捷方式工作正常,即打開應用程序並運行正常。嘗試重新安裝應用程序的應用程序快捷方式

但是,一旦我從安裝位置刪除了一些數據文件,然後單擊應用程序快捷方式,它就開始安裝應用程序並將所有這些文件再次複製到原始安裝位置。我的問題是如何在刪除文件後停止重新安裝。

感謝, Pritam

回答

1

您正在遇到Windows Installer的「修復」功能。

這是因爲您正在安裝Advertised快捷方式而觸發的。

如果您不喜歡此行爲,請不要將快捷方式指定爲「已刊發」。

有關Shortcut Table的此MSDN文章會提供一些有關指定「已發佈」與「未發佈」的信息。

不幸的是,Visual Studio沒有像InstallShield或WiX這樣的真正的安裝程序開發環境的定製功能,所以你要做的很棘手。更多信息here

+0

感謝您的留言。它確實有用並解決了我的問題。 – 2010-06-02 21:31:14

1

從這個post

另一種常見的誤解是試圖在組件中禁用自我修復的時候,當的keyPath缺失假設進行刪除自我修復被觸發關鍵路徑停止自我修復。 實際上,如果您希望停止單個組件上的自我修復,則正確的方法是從組件表中刪除組件組件GUID。

可以使用Orca(手動)做指定的操作(這將是更詳細的關於包裝的GUID的部分解釋)。或者您可以使用WiRunSQL.vbs(Win 7 SDK)腳本以PostBuildEvent命令自動執行此操作。

相關問題