MMX gets a new setup

While we are at about 5300 downloads today (hooray!), some users complained about the installation process requiring admin rights and lacking proper support for multi-user environments. It turned out to be quite challenging to get MMX working properly when the actual Delphi user doesn’t belong to the admin group. To the rescue Jeroen W. Pluimers wrote an article about that, also giving a solution to fix such a broken installation.

As I am responsible for MMX now, I also feel responsible for the problems users have because of this somewhat suboptimal installation process. The setup of a product can be seen like the front door of a building. If it is hard to enter, that will produce a negative feeling, sometimes just unconscious. People may even be discouraged to enter at all.

Looking through the reports I came up with the following goals that a new setup should target.

  • Admin rights should not be a requirement to install. Also a normal user should be able to install MMX into his Delphi version.
  • It should be possible to have an administrative installation, where normal users will only have to register MMX into their Delphi. At best, the last step happens silently.

Both installation scenarios have different consequences. The per user installation, will have a separate copy of MMX for each user. This may lead to different users working with different MMX versions. As an advantage, each user can make an update on his own. The disadvantage is, that each user has to make an update on his own.

On the other hand, the admin installation guarantees all users will use the same MMX version. Updates are effective for all users at once, but have to be done by an admin.

The new setup shows this behavior:

  • When the current user has administrator rights the setup will install into <ProgramFiles> as before. If this user also happens to have a valid Delphi installation, MMX will be registered there directly. This mimics the previous behavior.
  • If a normal user executes the setup and such an administrative installation is found, the setup will only register MMX in the current users Delphi. With the exception of Delphi 7 this step is optional. All other versions do an auto-registration of MMX on the next Delphi start.
  • If a normal user executes the setup and no administrative installation is found, the setup will install in the users <AppData> folder.

In other words: When you are an admin you get an administrative installation. Each normal user has just to start Delphi then to get MMX working (except for Delphi 7). If you there is no admin available or wanted, the current user will get a personal MMX installation.

Have a look at the welcome screen when starting the setup. It will tell you what is going to happen.

BTW, the FAQ about verifying an installation still has to be updated to address these changes.