"Dave Scott" <> wrote...
> Your idea is good, but you need to run msiexec/a
>> > Right clicking the msi file does not yield a "Run as
>> > administrator" option. That was my first thought as well. Any
>> > other ideas?
>> Elevate a command prompt, then type "msiexec /i
>> name_of_the_program.msi". It should install the MSI with elevated
>> rights.
I'm not sure that's correct.
"msiexec /a" performs an "administrative" install. But it doesn't grant any
additonal permissions or rights on the install process.
An "administrative install" is an installation to a shared network location,
so that individual machines can then install the application locally from
the network.
To install an MSI file "as administrator", you need to run Msiexec from a
Command Prompt running "as administrator", as Adam Leinss correctly notes.
This applies whether you're doing an administrative install or a normal
install. If you want to install the MSI package on a single machine, then
the "/a" paramter is unnecessary, and probably incorrrect.
If (and only if) the MSI package is configured to request elevation, you can
run the MSI as a normal user, and it will cause the UAC Consent prompt to be
displayed. If the MSI package does not request elevation (eg it is not
UAC-aware), then it will fail with an "access denied" error, if it tries to
updates protected regions of the system (C:\Program Files,
HKEY_LOCAL_MACHINE, etc).
Yes, the terminology is *very* confusing here

. The "administrative
install" usage has been around since the early days of the ACME installer,
c1993 or before. Long before Windows had an "Administrator" user.
--
Andrew McLaren
amclar (at) optusnet dot com dot au