yayay
Posts: 2
Joined: Mon Jun 02, 2008 1:31 pm

Merge Modules and ALLUSERS Property

Hi

We used to distribute our software with the Visual Studio built-in installer and now we want to switch to Advanced Installer. We use the MFC 8.0 merge modules to deploy the MFC libraries. Up to now in our MSI setup files the ALLUSERS property was not set. That means it's a per-user installation.

When I include the merge modules in the Advanced Installer setup project and build it, the ALLUSERS property is set to 1 in the resulting MSI. When I build the AI project without the merge modules the ALLUSERS property is not set. Can you explain why Advanced Installer sets the ALLUSERS property to 1 when the merge modules are included?

The problem is that our old setups won't get uninstalled if ALLUSERS when the merge modules are included. I have found a workaround: Delete the ALLUSERS property in all of the merge modules but I'm not sure if this is the way to go...

Regards, Y
Cosmin
Posts: 5797
Joined: Tue Jul 10, 2007 6:39 pm
Contact: Website

Re: Merge Modules and ALLUSERS Property

Hi,
When I include the merge modules in the Advanced Installer setup project and build it, the ALLUSERS property is set to 1 in the resulting MSI.
This is because the merge modules have the ALLUSERS property set to 1. The merge modules install files in per-machine locations, therefore they are configured for a per-machine installation. When you include them in your project, the entire project is automatically set for a per-machine installation.
Can you explain why Advanced Installer sets the ALLUSERS property to 1 when the merge modules are included?
A per-machine installation may require Administrator privileges and it installs resources for all the users on the machine. If you add a per-machine merge module to a per-user Advanced Installer project, the project will be automatically converted to per-machine. If it wouldn't not converted, the merge module could not be installed.

Also, Advanced Installer does not convert the merge module to a per-user installation because this would restrict the merge module. If the merge module is designed for a per-machine installation then Advanced Installer will create a per-machine installation package.

Regards,
Cosmin
Cosmin Pirvu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”