使用nsis制作的安装包安装后,无法卸载干净的问题

使用nsis制作的安装包安装后,在安装目录下会生成uninst.exe文件,如下图所示。

 

 

我们可以通过执行该uninst.exe程序删除已经安装的软件,也可以在控制面板中删除该软件。但有时候我们通过这些途径删除软件后,在安装目录下仍然可能会残留文件或者文件夹无法删除。如下图所示,运行卸载程序后在安装目录下Log和Resources文件夹仍然存在,在Log文件夹下面还存在Alarm、System、User三个文件夹,在这三个文件夹下面还存在多个XML文件。

 

 

 

 

 

这时候我们可以通过修改nsis生成的nsi文件来删除这些文件。在nsi文件中加入语句  

  Delete "$INSTDIR\Log\Alarm\*"

  Delete "$INSTDIR\Log\System\*"

  Delete "$INSTDIR\Log\User\*"

  RMDir "$INSTDIR\Log"
  RMDir "$INSTDIR\Resources"

如下图所示:

 

 

重新执行“Compile NSIS Script”生成安装包安装后,再运行卸载程序,这时候可以看到程序已经被卸载干净了。
————————————————
版权声明:本文为CSDN博主「cuijiecheng2018」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u014552102/article/details/80654706

posted @ 2019-08-20 16:17  wangchaonan  阅读(1036)  评论(1编辑  收藏  举报