The Cmdlet Library and UAC in Windows Vista, Windows 2008 and higher

What is UAC?

User Account Control (UAC) is a security feature present in Windows Vista or higher. It is used to limit the rights a user has during the normal operation of Windows while still allowing the user to make use of administrative rights when performing tasks that require them. The process of switching to administrative rights is called elevation.

How UAC affects the Cmdlet Library

The Cmdlet Library can be run in either an elevated or non-elevated PowerShell session. However, when running in a non-elevated session, some cmdlets will exit with an access denied error message as an unelevated user does not have the rights to perform administrative functions on the local computer. In general, Set-, Enable- and Disable- cmdlets cannot be run against the local machine as an unelevated user. For this reason, shortcuts are created for the Cmdlet Library on installation that are set to run as as an elevated user and prompt for UAC elevation on load. Elevated users can run all Vexasoft Cmdlets without issue.

Applies to: Windows Vista, Windows 2008 (excluding Core), Windows 2008 R2 (all editions), Windows 7, Windows 8 and Windows 2012