NSIS 将空文件夹添加到安装程序



下面的File

; Install common files
SetOutPath "${GameDir}Mopy"
File /r /x "*.bat" /x "*.py*" /x "w9xpopen.exe" /x "Wrye Bash.exe" "Mopy*.*"

过滤掉一些包含 python 文件的目录,但在我运行安装程序时仍然会创建这些目录(尽管是空的,或者包含空的子目录)。这些文件夹需要包含在安装程序中(如果我在"编译时"获得正确的术语),因为安装程序可以选择安装该程序的 python 版本。我想不出不添加这些空文件夹的方法。是否有一些通配符可用于此目的,或者我应该在安装时删除文件(使用 RMDir?

我会说你有两个选择,如果你同意的话,一个确实是RMDir的,可能会删除用户创建的空文件夹。

另一种选择是不使用File /r ...,而是使用!system来执行类似于批处理文件的内容,该文件生成一个文本文件,其中包含您可以!include的单个File指令。它看起来像这样:

!tempfile files
!system '"mygeneratefilelist.bat" "${files}"'
!include "${files}"
!delfile "${files}"

批处理文件将使用FOR和/或DIR列出和ECHO File命令以%1...

最新更新