I'm creating a directory under %PROGRAMDATA% that is to be shared by all users. The directory structure will be %PROGRAMDATA%\CompanyName\AppName.
I'm trying to set the folder permissions to grant All access to Authenticated Users. The snippet from my wxs file is:
<Directory Id="CommonAppDataFolder">
<Directory Id="CommonAppDataFolder_CompanyName" Name="CompanyName">
<Directory Id="CommonAppDataFolder_AppName" Name="AppName">
<Component Id="ConfigDir" Guid="6E37BE9B-916F-4A1E-ABDC-BFC656BDDA0F">
<CreateFolder>
<util:PermissionEx User="Authenticated Users" GenericAll="yes"/>
</CreateFolder>
</Component>
</Directory>
</Directory>
</Directory>
This works fine on English workstations, but fails on French workstations because the name is different. A quick Google search shows that the SID for Authenticated Users is S-1-5-11, but setting User to "S-1-5-11" fails with the error "ExecSecureObjects: Error 0x80070534: failed to get sid for account: S-1-5-11".
How do I indicate that the User= value is the SID? I tried "*S-1-5-11" and "{S-1-5-11}" with no success. The only thing the Wix documentation says about the User attribute is that it is a String.