Mr_and_Mrs_D
Mr_and_Mrs_D

Reputation: 34016

nsis adds empty folders to the installer

The File below:

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

filters out some directories that contain python files but still those directories are created (although empty, or containing empty subdirectories) when I run the installer. Those folders need to be included to the installer (if I get the terminology correct at "compile time") cause the installer has an option to install the python version of the program. I can't come up with a way to not add these empty folders. Is there some wildcard I could use to that purpose or should I go and remove the files on installation (using RMDir ?) ?

Upvotes: 0

Views: 416

Answers (1)

Anders
Anders

Reputation: 101569

I'd say you have two options and one is indeed RMDir if you are OK with it possibly removing empty folders that the user created.

The other option is to not use File /r ... and instead use !system to execute something like a batch file that generates a text file with individual File instructions that you can !include. It would look something like this:

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

and the batch file would use FOR and/or DIR to list and ECHO the File commands to %1...

Upvotes: 1

Related Questions