You’re basically right that it
depends on what the installer does, but there’s one important nuance:
An elevated installer launching a child process “normally” inherits elevation if it uses a straightforward process launch (e.g., CreateProcess). In other words, the default behavior is often:
- Elevated parent → elevated child
So for a “good/typical” installer that offers “Run app after install,” it usually has to do
extra work to start the app
non-elevated (for example, launching via the unelevated Explorer shell, using a helper process, scheduled task trickery, etc.). Many reputable installers do exactly that because running the app elevated (especially a browser) is a bad security practice.
About Process Explorer and the “Deny” flag
Process Explorer’s
Properties → Security (token view) can indeed show the
Administrators SID marked as
Deny only when the process is running with a filtered (non-elevated) token under an admin account. That’s a
token attribute, not “the Administrators group is denied by file permissions/ACLs.”
To verify elevation cleanly in practice, use one of these:
- Task Manager → Details → add the Elevated column (quickest).
- Process Explorer: check the process and look for Integrity level (Medium vs High) and whether it’s elevated.
Bottom line: An elevated installer
can end up launching the app elevated, but reputable installers commonly take steps to launch the app
unelevated after install. Checking the process token/elevation status (as you described) is the right way to confirm.