.NET安装项目在卸载时删除安装文件夹

时间:2010-01-06 18:48:54

标签: .net setup-project uninstall

我有一个.NET安装项目,可以很好地安装和卸载我的应用程序,但在卸载时会将安装目录放在后面。

如何在卸载期间/之后删除此文件夹?

更新:我的应用程序在运行时会在此目录中创建一个cahce文件,这看起来就像卸载过程中未删除该文件夹的原因。

有没有办法删除此文件以便删除该文件夹?

2 个答案:

答案 0 :(得分:4)

通常,安装期间创建的文件夹将在卸载时删除。

但是,如果该文件夹不为空或其他进程具有该文件夹或其中的子文件夹的打开句柄,则不会发生这种情况。因此,您应确保文件夹未在资源管理器或控制台窗口中的某处打开,您的应用程序未运行,并且您没有将任何其他文件放到该文件夹​​中。

您可以使用查找 - >查看Process Explorer的打开句柄。找到Handle或Dll 命令并输入安装文件夹的名称。

您可以通过创建卸载日志来获取扩展信息和可能的错误消息:

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

答案 1 :(得分:0)

是的,您可以通过编写自定义操作并在删除文件表中添加条目来删除这些文件/文件夹。 RemoveFile