Installation of your product can take place as either an All Users or a Current User installation, which you select through the Installation level option on the Installation Options page in your InstallMate project:
These features allow an application to be installed by an unprivileged user for his or her own exclusive use. They also allow multiple independent installations of the same product. In fact, there can be as many independent installations as there are user accounts on the system, plus one additional per-machine installation.
The most important difference between Tarma's Current User installation and the "Current User" installation of other installers is this:
Most other installers cannot handle multiple, mutually isolated installations of the same product for different users on a single system, and they also cannot handle installation by unprivileged users.
The following table shows which redirections take place during a Current User (per-user) installation as compared to an All Users (per-machine) installation.
| Item | All Users installation | Current User installation |
|---|---|---|
| All Users folders tree | No redirection | Redirected to Current User tree |
| Current User folder tree | No redirection | No redirection necessary |
| Program Files folder tree | No redirection | Redirected to the user_name\Application Data folders tree |
| ActiveX control registration | Registered globally | Registered for Current User only |
| DLL self-registration | Registered globally | Registered for Current User only |
| Typelib registration | Registered globally | Registered for Current User only |
| File extension and type registration | Registered globally | Registered for Current User only |
| App Paths registration | Registered globally | Registered for Current User only |
| HKEY_ALL_USERS registry key | Mapped to HKEY_LOCAL_MACHINE | Mapped to HKEY_CURRENT_USER |
| HKEY_CURRENT_USER registry key | No redirection | No redirection necessary |
| HKEY_LOCAL_MACHINE registry key | No redirection |
No redirection possible Note: If the installing user does not have sufficient access rights, the installation might fail. |
| HKEY_CLASSES_ROOT registry key | No redirection | Mapped to HKEY_CURRENT_USER\Software\Classes |
The following items cannot be installed during a Current User installation, because they cannot be redirected on a per-user basis:
The following table shows how the various Windows versions and installing user account types affect the installation type as specified by the Installation level on the Installer Options project page.
| Situation | Install level option | |||
|---|---|---|---|---|
| Windows version | Installing user | All Users | Query/Fall back | Current User |
| 95, 98, Me | any account | All Users | All Users | Current User |
| NT4 | Administrator | All Users | All Users | Current User |
| Power User | fails | Current User (1) | Current User | |
| User | fails | Current User | Current User | |
| 2000, XP, 2003 | Administrator | All Users | All Users | Current User |
| Power User | All Users | All Users | Current User | |
| User | fails | Current User | Current User | |
| Vista, 2008, Windows 7 (Administrator installer) |
Administrator | All Users (2) | All Users | Current User |
| User | All Users (2) | All Users | Current User | |
| Vista, 2008, Windows 7 (Standard installer) |
Administrator | All Users | All Users (3) | Current User |
| User | fails | Current User (3) | Current User | |
| Vista, 2008, Windows 7 (AsInvoker installer) |
Administrator | fails | Current User | Current User (4) |
| User | fails | Current User | Current User (4) | |
The selection of the Administrator, Standard, or AsInvoker stub sets for Windows Vista and later takes place automatically depending on the Installation level that you specify on the Installer Options project page. You only need to be aware of these different levels if you manually change the setup stub set in the Build - Advanced dialog box.