Quote:
Originally Posted by Anders
Why do you think I called it an issue? When you turn UAC off on these systems, ShellExecute with the runas verb just starts the process unelevated! The UAC plug-in detects this and displays its own RunAs dialog to handle this case.
|
I was never suggesting to use the "runas" verb. If the "nested" (Un)Intstaller you try to launch requires elevation, as per its Manifest,
ShellExecute(Ex) takes care of "elevation"
automatically. It will trigger an UAC dialog, when the (Un)Intstaller gets launched from a
non-elevated process. At the same time
Exec and
ExecWait would just
fail (error #740), if you try to launch an (Un)Installer that requires elevation, as per its Manifest, from a
non-elevated process. In the (rare) case that UAC is turned
off, using
Exec and
ExecWait would work too. But otherwise they'd fail in that situation. At the same time, using an
ShellExecute(Ex) solution should work in all cases.
Quote:
Originally Posted by Anders
Sure but that is not what we are talking about here. You implied that ExecShell[Wait] is a simple drop in solution to start something elevated and it is not. What we need is a plug-in that does this properly...
|
I did
not say that it (necessarily) does "start something elevated". What I actually said is that it
allows for launching a process that
requires elevation (as per its Manifest) from a
non-elevated process. In that case
Exec and
ExecWait would just fail.