2010-01-06 199 views
0

我有一個.NET安裝項目,安裝和卸載我的應用程序正常,但卸載它後面的安裝目錄。.NET安裝項目卸載安裝文件夾在卸載

如何在卸載期間/之後刪除此文件夾?

更新:我的應用程序在運行時會在此目錄中創建一個cahce文件,這看起來像是在卸載過程中未刪除該文件夾的原因。

有沒有辦法刪除這個文件,以便該文件夾被刪除?

回答

4

通常,安裝過程中創建的文件夾在卸載時將被刪除。

但是,如果該文件夾不是空的,或者其他進程的文件夾或子文件夾處於打開狀態,則不會發生這種情況。因此,您應該確保該文件夾未在資源管理器或控制檯窗口中的某處打開,您的應用程序未運行且未將任何其他文件放置到該文件夾​​中。

您可以用Process Explorer查看打開的手柄,使用查找 - >查找手柄或DLL命令並輸入安裝文件夾的名稱。

您可以通過創建一個記錄您卸載獲得更多的信息和可能的錯誤消息:

msiexec /x myProgram.msi /l*vx log.txt 
+0

那就是問題了。我的應用程序在第一次運行時創建一個緩存文件。我如何確保文件夾是空的呢? – modernzombie 2010-01-06 20:05:21

+0

將緩存文件存儲在應用程序數據文件夾中,而不是C:\ program files下。 – 2010-01-06 20:47:16

0

是的,你可以通過編寫自定義操作,並在添加刪除文件表條目中刪除這些文件/文件夾。 RemoveFile