NSIS删除文件夹应该怎么删? - NSIS Q&A - 『NSIS 学习交流』 - 梦想...
RMDir
[/r] [/REBOOTOK] 目录名
删除指定的目录(没有通配符的完整路径)。没有 /r 参数时只有在目录为空时才会被删除。如果指定了 /r ,则目录会被递归删除,所以在指定目录下的所有文件和目录均被删除。如果指定了 /REBOOTOK ,任何当前不能删除的文件或目录将会在重启后被删除 -- 如果文件或目录需要在重启时被删除,会放置一个重启的标记。当文件或目录不能被删除时放置一个错误的标记。
RMDir $INSTDIR
RMDir $INSTDIR\data
RMDir /r /REBOOTOK $INSTDIR
RMDir /REBOOTOK $INSTDIR\DLLs
需要注意的是当前的工作目录不能删除。当前的工作目录由 SetOutPath 设定。例如,下面的例子将不能删除该目录。
SetOutPath $TEMP\dir
RMDir $TEMP\dir
而下面的例子将成功地删除该目录。
SetOutPath $TEMP\dir
SetOutPath $TEMP
RMDir $TEMP\dir
警告: 在卸载程序中使用 RMDir /r $INSTDIR 是不安全的。虽然用户不太可能会选择将程序安装到 Program Files 文件夹中,但假如这样的话,这个命令将会递归删除整个 Program Files 文件夹,包括其他和卸载程序没有任何关系的程序(目录)。用户还可以安装除了程序文件之外的其他文件并希望它们能被卸载程序删除。可用的 解决方案 可以轻松地实现只卸载由安装程序释放的唯一文件。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。