I created an installer for a WCF/Silverlight application. It's all working fine until the user changes the installation path to C:\Program Files. All the other paths work fine.
failed to set security info for object: C:\Program Files (x86)\
It's on Windows 2008 Server R2. Even though the user selects C:\Program Files\ the log shows C:\Program Files (x86)\
Last few lines from the installation log:
MSI (s) (90:08) [13:22:10:334]: LocalSQLConfigDataSource returned 1 in remote context. MSI (s) (90:08) [13:22:10:344]: Executing op: ActionStart(Name=ExecSecureObjects,,) Action 13:22:10: ExecSecureObjects. MSI (s) (90:08) [13:22:10:353]: Executing op: CustomActionSchedule(Action=ExecSecureObjects,ActionType=3073,Source=BinaryData,Target=ExecSecureObjects,CustomActionData=C:\Program Files (x86)\CreateFolderEveryone269221888) MSI (s) (90:B0) [13:22:10:358]: Invoking remote custom action. DLL: C:\Windows\Installer\MSIF980.tmp, Entrypoint: ExecSecureObjects ExecSecureObjects: Entering ExecSecureObjects in C:\Windows\Installer\MSIF980.tmp, version 3.6.3005.0 ExecSecureObjects: Securing Object: C:\Program Files (x86)\ Type: CreateFolder User: Everyone ExecSecureObjects: Error 0x80070005: failed to set security info for object: C:\Program Files (x86)\