1

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.

J. Hyslop
  • 53
  • 5
  • I haven't looked at this in quite some time, but here are a couple of older answer on the topic: [Various permissioning elements](https://stackoverflow.com/a/59823726/129130), [PermissionEx sample - (SDDL string)](https://stackoverflow.com/a/49546999/129130). No guarantees, but please have a look. – Stein Åsmul Jun 29 '23 at 23:38
  • Thanks, but neither of those addresses the issue I'm facing, which is that the User= parameter is different on English workstations than on French workstations. I was hoping to use the SID, which is language independent. I really do not want to have to go down the path of language-dependent installations. – J. Hyslop Jul 04 '23 at 17:11

0 Answers0