-
Question(Using Wix v5) We have an msi installer which installs some files to the PersonalFolder (i.e. C:\Users<username>\Documents) of the installing user. The installer requires elevation with an admin account to install (UAC prompt), but the files end up in the standard user's Documents folder. This is expected and the desired behaviour. When changing to use a bundle installer .exe that wraps this msi (to include other dependencies) and elevates to an admin user on install (UAC prompt), it seems as though the msi doesn't have knowledge of the standard user running the installer and instead installs the PersonalFolder files to the admin user's Documents folder. Is there a way to maintain the behaviour for the msi to install to the standard user's Documents folder when using a bundle installer? Bundle.wxs: (The main MsiPackage Id="Installer" is using the WixUI_InstallDir.wxi template) <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal">
<!-- Common defines -->
<?include "..\Installer\Properties.wxi"?>
<Bundle Name="!(bind.packageName.Installer)"
Manufacturer="!(bind.packageManufacturer.Installer)"
Version="!(bind.packageVersion.Installer)"
UpgradeCode="$(var.UPGRADE_CODE_BUNDLE)"
IconSourceFile="..\Installer\app_icon.ico">
<BootstrapperApplication>
<bal:WixStandardBootstrapperApplication LicenseFile="..\Installer\licences.rtf"
Theme="rtfLargeLicense"
ShowVersion="no"
LogoFile="..\Installer\app_icon.ico"
LogoSideFile="..\Installer\app_icon.ico" />
</BootstrapperApplication>
<!-- Chain of packages to install -->
<Chain>
<BundlePackage Id="VC_REDIST"
SourceFile="$(var.VC_REDIST_X86_PATH)"
Permanent="yes"
Visible="yes"
Cache="remove"
InstallArguments="/install /passive /norestart"
RepairArguments="/repair /passive /norestart"
UninstallArguments="/uninstall /passive /norestart" />
<MsiPackage Id="AdditionalRuntime" SourceFile="$(var.ADDITIONAL_RUNTIME_DIR)Setup.msi" />
<MsiPackage Id="Installer" SourceFile="$(var.Installer.TargetPath)" />
</Chain>
</Bundle>
</Wix> Open Source Maintenance Fee
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 6 replies
-
IIRC when installing a mix of per user and per machine packages the burn (aka bundle, exe) will default to per machine for everything. To confirm this you could try installing just your per user package using burn and see if that works. |
Beta Was this translation helpful? Give feedback.
The resolution above works, e.g. add an ExePackage with PerMachine="no" Vital="no"