如何硬删除 NSIS 生成的 uninst.exe?

Posted

技术标签:

【中文标题】如何硬删除 NSIS 生成的 uninst.exe?【英文标题】:How to hard remove uninst.exe that is generated by NSIS? 【发布时间】:2017-10-18 21:03:31 【问题描述】:

我正在使用 NSIS 为我的 Windows 应用程序编写安装程序。安装应用程序后,我的程序目录下也会生成一个uninst.exe。后来我需要卸载我的程序,但我没有在控制面板中这样做。因此我去了文件系统并试图删除目录。除 uninst.exe 之外的所有内容均已删除。我已经尝试更改此文件的权限和其他方法,但它不起作用。

【问题讨论】:

【参考方案1】:

WriteUninstaller 不设置文件权限或任何其他可能阻止您删除它的属性。听起来该文件可能仍在被您机器上的某些东西使用。

要尝试的事情:

使用任务管理器或进程资源管理器查看是否有 uninst.exe 进程仍在运行。 使用 Process Explorer 中的查找句柄功能查找文件的所有打开句柄。 使用Process Monitor 获取有关失败删除操作的详细信息。 检查 %LOCALAPPDATA%\VirtualStore 以确保 UAC 虚拟化没有用 "ghost" files 欺骗您。 禁用您的防病毒软件。 重启机器并再次尝试删除文件。

【讨论】:

以上是关于如何硬删除 NSIS 生成的 uninst.exe?的主要内容,如果未能解决你的问题,请参考以下文章

NSIS 卸载程序权限级别

如何用Inno编译卸载时删除整个文件夹

如何从 NSIS 安装程序“刷新”Windows 7 开始菜单?

NSIS 安装程序应用程序名称未正确显示

NSIS 卸载程序不删除目录

我的 NSIS 脚本的卸载没有从 ProgramData 目录中删除链接