2012-02-08 749 views
1

我正在使用Windows安裝程序創建安裝項目。如何從AppData Roaming文件夾中刪除應用程序文件

如何在應用程序卸載時從AppData \ Roaming文件夾中刪除/刪除應用程序文件。

我嘗試添加一個特殊的文件夾,並將DefaultLocaltion設置爲[AppDataFolder],但它沒有工作。

我需要做其他事嗎?

回答

2

默認情況下,安裝後Windows Installer不會刪除由應用程序創建的文件。爲此,您需要編寫自己的自定義操作,該操作將在卸載時運行,或者取決於用於創作MSI的工具,您可以使用內置選項來清理應用程序位置,因爲某些工具具有此支持。

+0

FWIW,Windows Installer具有RemoveFile表,用於描述Windows安裝程序未安裝的要刪除的文件。這不是真正的「工具」特定支持。 – 2012-02-13 15:14:12

3

我需要了解你想要做什麼來給你具體的建議。一般來說,你要做的就是從CommonAppDataFolder中刪除文件,但不能從AppDataFolder中刪除文件,因爲試圖從多個用戶配置文件中獲取用戶數據並不是最佳做法。另外嘗試清理漫遊配置文件用戶數據是完全不可能的,因爲其他用戶沒有登錄。

你想閱讀:

Managing Roaming User Data Deployment Guide

假設你正在做什麼,我覺得你是,你需要一個清理腳本/ EXE,你留下,在卸載和自定義在卸載期間寫入註冊表的操作(MSI本身無法完成)來調用該腳本/ EXE。你要利用活動設置技巧如下所述:

Using Active Setup to Repair User Settings

它會工作的方式是你卸載離開EXE和註冊表項的後面,這樣,當它在用戶登錄的漫遊數據獲取從服務器拉下來到本地,Active Setup意識到它還沒有運行腳本。腳本運行(一次)並刪除數據。當用戶註銷時,服務器上的數據被複制/刪除。然後他們再次登錄它不會再運行。

相關問題