Hello,
attempting to make the work with tools like CACLS.exe, XCACLS.vbs (with CScript.exe) and ICACLS.exe a little easier, I have developed a script and built it into a new action. After the installation, you will be able to make calls to the proper application that should be used on the target operating system.
You can fetch the zip file containing the installer, documentation and a small sample project at this address.
After the scripts were copied into the correct sub folders of Setup Factory, you must add two files to your project:
Now you are already able to include this new action into your scripts. As soon as you type the dot, the new function will be shown in the drop-down menu, as you can see in this image:

The action wizard makes the passing of the parameters as easy as possible:
You can inspect the exact syntax of the command that was created (using CScript.exe or ICACLS.exe) in the installer's log file, so this will allow you to review the parameters (and execute the command manually) if something is not working as you expected.
This script is provided as-is, without guarantees that it will work in every case. I will attempt to fix problems, of course. However, this work is not officially supported by Indigo Rose. You can edit the script and modify it further to fit your requirements.
Ulrich
attempting to make the work with tools like CACLS.exe, XCACLS.vbs (with CScript.exe) and ICACLS.exe a little easier, I have developed a script and built it into a new action. After the installation, you will be able to make calls to the proper application that should be used on the target operating system.
You can fetch the zip file containing the installer, documentation and a small sample project at this address.
After the scripts were copied into the correct sub folders of Setup Factory, you must add two files to your project:
- Add XCALCS.vbs to your list of primer files.
- Add SetFolderPermissions.lua to your script files (next to _SUF70_Global_Functions).
Now you are already able to include this new action into your scripts. As soon as you type the dot, the new function will be shown in the drop-down menu, as you can see in this image:

The action wizard makes the passing of the parameters as easy as possible:
- Set the user or group that the action should affect:
If you use the options in the drop-down, the corresponding SIDs will be used. (SIDs are security identifiers in Windows operating systems and look as gibberish like "S-1-5-20".) This means, when you set "Everybody", it will still work correctly on non-English Windows operating systems, where this user group has a different, localized name.
- Now set the operation. Are you giving a new right, or taking something away?
- Set the right you want to control, like read, write, execute, full access.
- Finally, you may want to set the same rights for child items as well, instead of just the folder.
You can inspect the exact syntax of the command that was created (using CScript.exe or ICACLS.exe) in the installer's log file, so this will allow you to review the parameters (and execute the command manually) if something is not working as you expected.
This script is provided as-is, without guarantees that it will work in every case. I will attempt to fix problems, of course. However, this work is not officially supported by Indigo Rose. You can edit the script and modify it further to fit your requirements.
Ulrich
Comment