是否可以使用NSIS从安装目录保留“ uninstall.exe”(防止手动删除文件)

时间:2019-02-08 15:29:32

标签: nsis

当用户从Program Files文件夹中手动删除Uninstall.exe文件时。然后,如果用户要卸载,请从程序和功能中删除应用程序,然后从程序和功能中删除该应用程序。但是带有文件和注册表项的Installed文件夹仍然存在。

因此,是否可以选择隐藏文件(uninstall.exe)或设置权限,以防止手动删除此文件?

1 个答案:

答案 0 :(得分:0)

是,不是。

您可以将其设置为隐藏文件,并且理论上可以将ACL设置为拒绝删除(卸载程序本身必须再次编辑ACL才能删除它),但是没有什么可以阻止管理员删除文件如果他们真的想要。

Section
SetOutPath "$InstDir"
WriteUninstaller "$InstDir\un.exe"
SetFileAttributes "$InstDir\un.exe" HIDDEN
SectionEnd

Section Uninstall
Delete "$InstDir\un.exe"
RMDir "$InstDir"
SectionEnd