To make it as convenient as possible to elevate to admin privileges when running as a standard user or protected administrator in Windows Vista, Microsoft designed a system of automatic elevation in certain scenarios.
When a process is launched as a standard user, the
CreateProcess function calls the
AppCompat, Fusion, and
Installer Detection functions to determine if the process requires elevation. The process's application manifest is also checked to establish the value of the
requestedExecutionLevel tag. If any of these variables determine that the process requires elevation, the
CreateProcess function returns an error and the