Switch to install for Everyone? /m?
Hello all,
I'm new to the packaging arena (and appdeploy) and I have been looking for ways to simplify deploying an msi without repackaging, where possble.
Can anyone explain the behavior of the /m switch? Microsoft states that it advertises it to all users, but there is no other clarification. Same as selecting install for "Everyone" while running the msi?
Otherwise, any suggestions on the best way to install an msi, the only change being to select the "Everyone" radio button?
I have Wise and Admin Studio at my disposal but it seems like overkill to create a transform to change a single user selection.
Thanks!
I'm new to the packaging arena (and appdeploy) and I have been looking for ways to simplify deploying an msi without repackaging, where possble.
Can anyone explain the behavior of the /m switch? Microsoft states that it advertises it to all users, but there is no other clarification. Same as selecting install for "Everyone" while running the msi?
Otherwise, any suggestions on the best way to install an msi, the only change being to select the "Everyone" radio button?
I have Wise and Admin Studio at my disposal but it seems like overkill to create a transform to change a single user selection.
Thanks!
0 Comments
[ + ] Show comments
Answers (5)
Please log in to answer
Posted by:
spartacus
13 years ago
Hello,
You should investigate the use of the ALLUSERS property.
This property can used on the installation command line if you really do not want to create a transform, for example
msiexec /i <Full path to your MSI> ALLUSERS=1 /qn
would give a fully silent installation with the product installing for 'Everyone'
BTW, I don't think there is a /m qualifier to msiexec.exe, did you mean /jm , perhaps ? If so, this will Advertise the package for installation to all users which may or may not be what you want.
Regards,
Spartacus
You should investigate the use of the ALLUSERS property.
This property can used on the installation command line if you really do not want to create a transform, for example
msiexec /i <Full path to your MSI> ALLUSERS=1 /qn
would give a fully silent installation with the product installing for 'Everyone'
BTW, I don't think there is a /m qualifier to msiexec.exe, did you mean /jm , perhaps ? If so, this will Advertise the package for installation to all users which may or may not be what you want.
Regards,
Spartacus
Posted by:
milhaus
13 years ago
Posted by:
pjgeutjens
13 years ago
2 things to distinguish:
Installation / Advertisement: when advertising an application, Windows Installer will not actually install yet (i.e. copy the files and what not), it will only offer so called entry-points to the application: shortcuts, a file type association... The actual installation only happens when the user starts the application for the first time through one of these.
Per-User / Per-Machine install: This is controlled by the ALLUSERS property in the MSI, as well as the radio buttons you speak of. It determines whether the per-user part of the installation gets put in place only for the user that is executing the installer, or in machine context, then later to be propagated to the different users. As a rule, for corporate rollouts, a per-machine (ALLUSERS=1) is usually indicated. This however also implies that these per user components have to be put in place for all subsequent users of the application, and this is where self-healing and Active Setup come in to play. Main reasons for preferring per-machine installs are that when using a distribution system, often the installs are done under LOCALSYSTEM credentials, instead of an actual admin user, and that an install done per-user under a certain account, also has to be uninstalled under that account to regain a clean system.
If some of this stuff is abit dense, the words in italics are good starting points for a few google searches ;-)
EDIT:
Since Graham beat me on the main response ([:(]), I'll try to answer this: should be as simple as making your desired changes in Wise/Installshield, doing a save as -> transform(.mst) file, and running the command line:
msiexec.exe /i <path to msi> TRANSFORMS=<path to mst>
Rgds,
PJ
Installation / Advertisement: when advertising an application, Windows Installer will not actually install yet (i.e. copy the files and what not), it will only offer so called entry-points to the application: shortcuts, a file type association... The actual installation only happens when the user starts the application for the first time through one of these.
Per-User / Per-Machine install: This is controlled by the ALLUSERS property in the MSI, as well as the radio buttons you speak of. It determines whether the per-user part of the installation gets put in place only for the user that is executing the installer, or in machine context, then later to be propagated to the different users. As a rule, for corporate rollouts, a per-machine (ALLUSERS=1) is usually indicated. This however also implies that these per user components have to be put in place for all subsequent users of the application, and this is where self-healing and Active Setup come in to play. Main reasons for preferring per-machine installs are that when using a distribution system, often the installs are done under LOCALSYSTEM credentials, instead of an actual admin user, and that an install done per-user under a certain account, also has to be uninstalled under that account to regain a clean system.
If some of this stuff is abit dense, the words in italics are good starting points for a few google searches ;-)
EDIT:
I'm still working on how to merge or recompile the transform and associated link back into the msi
Since Graham beat me on the main response ([:(]), I'll try to answer this: should be as simple as making your desired changes in Wise/Installshield, doing a save as -> transform(.mst) file, and running the command line:
msiexec.exe /i <path to msi> TRANSFORMS=<path to mst>
Rgds,
PJ
Posted by:
milhaus
13 years ago
Posted by:
spartacus
13 years ago
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.