Why can some programs be installed without administrator privileges?
Solution 1:
A program "installation" consists of writing some files and perhaps writing some Registry entries. If those writes are made to locations in your user folders and your user Registry hive, there is no need for administrative access. A program's executable files can be located anywhere.
Solution 2:
As kreemoweet and Andrew mentioned, the most common cause is a program's install location.
Programs installed to system folders like Program Files
or Program Files (x86)
will always require Administrator rights when installing. Programs installed to user-specific folders like AppData
usually won't require administrator rights.
Pro tip: If a program's installer requests admin rights, try seeing if a portable version is available, or change the install path to a folder that isn't Program Files
.
While install location is the most common reason a program may require admin rights, it is not the only reason.
Requires Admin rights
- Installing to system-level directories.
-
Program Files
,Program Files (x86)
,Windows
-
- Modifying system-wide registry entries under
HKEY_LOCAL_MACHINE
- Installing device drivers
- Installing ActiveX controls
- Configuring Windows Updates
- Viewing or changing another user's folders or files
Does not require Admin rights
- Installing to user-level directories
-
AppData
,LocalAppData
,Desktop
-
- Modifying
HKEY_CURRENT_USER
in Registry
As an interesting aside, Google Chrome will install to Program Files
if the user has admin rights, but will silently fall back to AppData
if the user does not have Administrator rights.
Sources
- Stack Overflow: What actions will require UAC elevation in Windows?
- Super User: What is “%AppData%”?
- Super User: Install Google Chrome to AppData\Local\Google\Chrome\Application
- Edd Bott: What triggers User Account Control prompts?
- Wikipedia: User Account Control - Tasks that trigger a UAC prompt
Solution 3:
Certain directories and programs are protected by the system to that they can only be written to by users with a certain level of permission (e.g. Administrators).
It's possible that your program did not write to such a directory (e.g. C:\Program Files) or invoke such a program (e.g. regedit, to modify your registry).
It's also possible - if you are on an Active Directory environment - your IT department has allowed certain programs to install or allowed you to install programs in certain circumstances - either intentionally or by mistake. The policies set by your IT department are pushed out to your machine invisibly, so you wouldn't be aware anything had changed.
Your best bet is to contact your IT department and notify them. Not only will they likely be able to explain it, but if you've found a security risk they can likely identify and fix it.