Windows OS Hub
  • Windows
    • Windows 11
    • Windows 10
    • Windows Server 2025
    • Windows Server 2022
    • Windows Server 2019
    • Windows Server 2016
  • Microsoft
    • Active Directory (AD DS)
    • Group Policies (GPOs)
    • Exchange Server
    • Azure and Microsoft 365
    • Microsoft Office
  • Virtualization
    • VMware
    • Hyper-V
    • Proxmox
  • PowerShell
  • Linux
  • Home
  • About

Windows OS Hub

  • Windows
    • Windows 11
    • Windows 10
    • Windows Server 2025
    • Windows Server 2022
    • Windows Server 2019
    • Windows Server 2016
  • Microsoft
    • Active Directory (AD DS)
    • Group Policies (GPOs)
    • Exchange Server
    • Azure and Microsoft 365
    • Microsoft Office
  • Virtualization
    • VMware
    • Hyper-V
    • Proxmox
  • PowerShell
  • Linux

 Windows OS Hub / Windows 11 / How to Disable UAC for a Specific Program

February 5, 2026

How to Disable UAC for a Specific Program

This article will show how to disable UAC (User Account Control) only for a specific program without disabling this security feature entirely. To suppress the UAC elevation prompt for a single application, we will use the RunAsInvoker compatibility flag.

Contents:
  • Enable the RunAsInvoker Compatibility Flag in the Registry
  • Disable User Account Control for a Program from the Command Line
  • Disabling UAC Prompt for a Program Using the Application Compatibility Toolkit
  • Run an App without a UAC Prompt Using Task Scheduler

 The User Account Control security feature prompts users to confirm any action that requires administrator privileges. This is an effective way to protect Windows from various threats, such as viruses, trojans, worms, and rootkits. Although Microsoft and security experts strongly advise against it, some users find these pop-up prompts annoying and prefer to completely disable UAC in Windows.

In my case, I want to disable the User Account Control prompt only for a specific app.

  • A UAC elevation prompt appears to confirm the launch when a program is run with an administrator account.UAC prompt when run an app from a regular user
  • The program cannot be run as a regular user because administrator permissions are required. If you run the program as a non-admin user, a UAC prompt will appear, asking you to enter admin credentials. Admin credential prompt in UAC

My task is to allow running this program as an unprivileged user and suppress the UAC prompt. This must be done without disabling User Account Control completely.

This can be achieved using the RunAsInvoker compatibility flag, which forces the program to inherit the parent process privileges while suppressing the UAC prompt. For example, launching the program from File Explorer (a non-elevated process) will also launch it in unprivileged mode.

Disabling UAC for a program that requires administrator privileges (because it changes system settings or files) doesn’t elevate user privileges within the application itself. The program will still run with the current user’s permissions. The program will be unable to make these system changes if the current user does not have permission to do so. There are also a small number of apps that run only in “As administrator” mode and ignore the RunAsInvoker

Enable the RunAsInvoker Compatibility Flag in the Registry

Windows can automatically apply the RUNASINVOKER compatibility flag to certain programs. To implement this, create a REG_SZ value in the registry key HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers using the full path to the target program’s EXE file as the value name:

  • Value name: C:\Program Files\SpecApp\SpecApp2.exe
  • Value data: RunAsInvoker

Enable RunAsInvoker flag for program in registry

You can create this parameter in the registry using the following command:

reg add "HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "full_path_to_app.exe" /t REG_SZ /d "RUNASINVOKER" /f

Create this registry parameter under the HKLM hive to enable app compatibility mode for all users of the computer: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers .

The specified program will always run without a UAC prompt by default, unless it is explicitly launched with the “Run as administrator” option.

In the AD domain environment, this registry option can be deployed to users’ computers via a GPO.

Disable User Account Control for a Program from the Command Line

There is another way to run the program without admin privileges and suppress the UAC prompt (see the article).

To run a program with the RunAsInvoker compatibility flag enabled, execute the following command from the command prompt.

cmd /C "set __COMPAT_LAYER=RunAsInvoker && start "" "C:\Program Files\SpecApp\SpecApp2.exe""

Or create a BAT file:

set ApplicationPath= C:\Program Files\SpecApp\SpecApp2.exe"
cmd /min /C "set __COMPAT_LAYER=RUNASINVOKER && start "" %ApplicationPath%"

CMD/BAT to run program with RunAsInvoker flag

If you run this BAT file as a non-admin user, the specified program will start without a UAC prompt.

The following simple REG file will add an option to run programs without elevated privileges to the context menu of all programs in File Explorer.

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\forcerunasinvoker]
@="Run without privilege elevation"
[HKEY_CLASSES_ROOT\*\shell\forcerunasinvoker\command]
@="cmd /min /C \"set __COMPAT_LAYER=RUNASINVOKER && start \"\" \"%1\"\""

REG file: add runasinvoker option to the Explorer

Now, by clicking on any app in the File Explorer, you can use the “Run without privilege elevation” option.

File Explorer option "Run without uac elevation"

Disabling UAC Prompt for a Program Using the Application Compatibility Toolkit

An enterprise-level way to implement the RunAsInvoker is to use the the Application Compatibility Toolkit utility, which is part of the Windows ADK.  Download the latest version of ADK for Windows 11 and 10 here.

Run the adksetup.exe file and during installation (the program needs Internet access), select only the Application Compatibility Tools item to install.

Or install the feature using the command:

adksetup.exe /features OptionId.ApplicationCompatibilityToolkit

install Application Compatibility Tools on windows 10

The Microsoft Application Compatibility Toolkit is used to fix app compatibility issues when migrating to new versions of Windows.

There are two versions of Application Compatibility Administrator in the system:  a 32-bit and a 64-bit version. Run the Application Compatibility Administrator version that corresponds to the bitness of the program for which you want to disable the UAC request.

run Application Compatibility Administrator - 32-bit on windows 10

Run the Compatibility Administrator (32-bit) as an administrator (!). In the Custom Databases node, right-click New Database and select Create New -> Application Fix.

create application fix

In the following dialog, specify the name of the application, the developer, and the path to the program’s executable file (C:\Program Files\SpecApp\SpecApp2.exe).

create app fix for an executable

Skip the Compatibility Mode step in the configuration wizard by pressing Next. In the Compatibility Fixes list, check the RunAsInvoker option. To ensure that the application can run without UAC, click the Test Run button.

RunAsInvoker option

In the Matching Information dialog, you can specify which application parameters should be checked when running in compatibility mode (ORIGINAL_FILENAME, FILE_VERSION, SIZE, CHECKSUM, etc.). In the test environment, you can disable all options. For protection against file tampering, it is recommended that these options be configured in production.

executable file Matching Information

Click Finish, then specify the name of the file to which the compatibility fixing package should be saved (for example, SpecApp_UAC_disabled.sdb). This file contains instructions for running the program in selected compatibility mode.

save application compatibility fix to sdb file database

The only remaining task is to install the compatibility fix package. This can be done from the Compatibility Administrator console (select Install from the menu).

intall compatibility sdb file

Also, the SpecApp_UAC_disabled.sdb file can be deployed to other computers running the same application and installed via the command prompt.

sdbinst -q c:\tools\SpecApp_UAC_disabled.sdb

If you have done it right, a message of successful package installation appears.

Installation of regedit complete.

install sdb file with sdbisnt tool

After applying the compatibility fix, the corresponding entry will appear in the list of installed Windows apps.

program compatibility fix sdb in the installed apps list

Now, try running the application as a non-admin user. It should now start without a UAC request.

To check the current app process privileges, open Task Manager, navigate to the Processes tab, and add the Elevated column. Make sure that your app is running in non-privileged mode ( Elevated=No).

task manager: check app process is not elevated

To remove the compatibility fix, run the command:

sdbinst –u c:\tools\SpecApp_UAC_disabled.sdb

Run an App without a UAC Prompt Using Task Scheduler

Another way to run a program without a UAC prompt is to use the Windows Task Scheduler. This method enables the program to execute with administrator privileges without prompting the UAC elevation dialog. Unlike other methods, this one only works in a user session with local administrator permissions.

The idea is to create a task in Task Scheduler with the Run with highest privileges option enabled to run the program.

Scheduled task with Run with highest privileges option enabled

Such a task can be created manually from the graphical taskschd.mscconsole, but it is easier to create a task with a single command. Open a command prompt as an administrator and run:

schtasks /create /tn "\RunGeekAppElevated" /tr "'C:\Program Files\Geek Uninstaller\geek.exe'" /SC ONCE /ST 12:00 /RL HIGHEST /F

create new task with schtasks command

To launch the target program with administrator privileges and bypass the UAC prompt, run the following command (administrator privileges are not required for this step):

schtasks /run /tn "\RunGeekAppElevated" /i

For more convenience, you can create a desktop shortcut containing this command.

Desktop shortcut to run task

Verify that the program is running with administrator privileges (Elevated=Yes) without triggering a UAC prompt.

So, we looked at how to disable UAC for a specific program without completely disabling User Account Control. This will allow you to run Windows programs under a non-admin account without a UAC elevation prompt or entering administrator credentials.

40 comments
19
Facebook Twitter Google + Pinterest
Windows 10Windows 11
previous post
How to Read Windows Update Logs on Windows 10 and 11
next post
SQL Server: Could Not Find the Database Engine Startup Handle

Related Reading

Software RAID1 (Mirror) for Boot Drive on Windows

February 24, 2025

How to Upgrade Windows Build from an ISO...

November 7, 2024

How to Connect L2TP/IPSec VPN Server From Windows

September 22, 2023

Fix: DNS Resolution over VPN Doesn’t Work on...

December 27, 2023

Disks and Partitions Management with PowerShell on Windows

July 11, 2025

How to Create Multiple Partitions on a USB...

March 13, 2024

How to Create and Use a RAM Drive...

December 18, 2023

How to View and Clear RDP Connections History...

March 11, 2024

40 comments

LEBLOND March 12, 2015 - 10:41 pm

Great. Thanks

Reply
Noxedwin September 1, 2020 - 7:42 pm

Heck yeah. Massively helpful. For some reason, certain Steam games dog-whistle the UAC prompt. I don’t want to have to tell the computer that – yes – I would like to play Phantasy Star Online 2 after saying that I would like to play it.

Many thanks!

Reply
Paul April 28, 2016 - 3:39 pm

Hi, I went through the steps, but it still prompted me with a UAC when i tried to open regedit. You’re supposed to open it like you normally would, correct?
Thanks,
Paul

Reply
Vandrey Trindade July 19, 2018 - 7:23 pm

Yeah, I tried it right now with a Windows 10 1709 build and using both 32 and 64 bits version of the Compatibility Administrator. Control panel shows regedit there but it keeps showing UAC.
The file on Windows 10 is in C:\Windows\regedit.exe

This doesn’t work on Windows 10?

Reply
admin July 24, 2018 - 6:48 am

You can try to run regedit.exe without showing UAC using this bat file:
startwithoutUAC.bat
Set AppPath=”C:\Windows\regedit.exe””
cmd /min /C “set __COMPAT_LAYER=RunAsAdmin && start “”%AppPath%”

Reply
Vandrey Trindade July 24, 2018 - 11:56 am

Thanks, the way I’ve managed to make it work was using the command line below:
cmd /min /C “set __COMPAT_LAYER=RuAsAdmin && start C:\Windows\Regedit”

Reply
Eli October 3, 2019 - 8:47 pm

I have tried all this for VS Code (instead of Regedit). The bat file just opens the program regularly and not as admin. Is this something more to do for programs other than Regedit?

Reply
Vandrey Trindade October 7, 2019 - 4:50 pm

Eli,
I believe that this will only work for programs that trigger UAC, VS Code can run without administrator rights.
If you want VS Code to run always as admin, you have to configure the shortcut.

Eli October 8, 2019 - 12:26 am

The prompt comes up for VS Code and any program I need to run Admin on for as far as I can tell. I didn’t want to turn UAC all together for security reasons, so thought this would allow selective turning off. Thanks for trying to assist Vandrey.

I’ve decided to switch to Linux and get away from all of Window’s problems. Don’t think I’ll ever look back 🙂

Vandrey Trindade October 8, 2019 - 12:04 pm

Eli,
As far as I know, there are different installs of Visual Studio Code, check on their website.
And you are free to switch to Linux whenever you want, but take a look at the news that Catalina is bringing UAC to macOS too.
It’s a great security feature from Microsoft and it won’t be a surprise if Linux gets something like that.

Pedro March 22, 2022 - 10:53 pm

I am having same issue

Reply
Aleksandr February 10, 2019 - 3:50 am

Try: set __COMPAT_LAYER=RunAsInvoker

Reply
Louie March 25, 2019 - 7:15 pm

Let me ask you something about this. I have been trying to figure this out for a while. Close to almost 1 month hitting my head at my desk. I have a certain program we run on all workstation. Once in a while, we get an update from our vendor to update it. We download the .msi or exe file and place it in a shared folder that everyone has access too. When the user opens the file it checks that folder and see’s there’s an update. it tried to install the update but the UAC comes up. Since the users are just standard users we have to enter our username/password. I notice towards the bottom you talked about GPO in a domain and pushing this out. How does that work and do you have any documentation on how to set this up?

I need to bypass the UAC on this program. Maybe adding other software to the database too. Any kind of help would be awesome.

Reply
admin March 27, 2019 - 8:12 am

As far as I understand, in your case some app trying to install an update on users’ computers. Obviously, without administrator permissions, it is not installed at all.
I think it’s easier for you to install this update through installing a GPO software / SCCM / GPO startup script or something similar.

Reply
Dan Henderson June 4, 2019 - 6:09 am

Works great for me using the ADK on Win 10 1803. Delighted to be able to stop those popups!

Reply
Steve Dells July 17, 2019 - 3:03 pm

There has got to be a simple program out that will do this in 2 to 3 steps…this is crazy and complicated. A program you enter the file path to, boom….done. Anything? I’ve tried this using instructions above and not working in Win 10 v1903
Trying to use the program called “Everything” search program, 64 bit portable, without the UAC prompt coming up every time. I prefer it to MS search.
Got to be an easier way, I’m uninstalling the dang Windows Compatibility Manager. Too bloated and complicated for allowing this little program to run.

Reply
Michael A April 29, 2021 - 2:46 pm

There is an easier way by using a batch file like this example:

set __COMPAT_LAYER=RunAsInvoker
start regedit.exe

Reply
Sir Toto June 6, 2020 - 10:11 pm

I’m using GiMeSpace QuickMenu Version 2.0.3.18 (freeware available on Cnet). I’m running it as admin with the Windows Task Scheduler at startup. You can add programs in a menu that launches with a click/key you choose. Any program launched through it will run with admin right without UAC prompt on Windows 10 1909 x64.
You just have to run it normally to add programs in it, you can’t do it when it’s running as admin (bug?).
You may try more recent versions which are designed for very high screen resolutions. The one I tried was buggy on my system.

I suppose same thing can be done with shorcut managers or other kinds of program managers running with admin rights. It’s easy to configure them to run with admin rights at startup with the Task Scheduler.

Reply
Sir Toto June 7, 2020 - 12:24 am

My mistake: by “shortcut managers”, I meant Keyboard Hotkeys (Shortcuts) Managers. And it works fine with them also. You just have to configure a hotkey to run the program you want, and launch the manager on connection to user session with highest privileges through the Task Scheduler.
Here are some programs you can use: Clavier+ (UtilFr), Keyboard Shortcuts Manager (Softpedia), HotkeyP, and a bunch of others that are listed on TheWindowsClub, for instance.

Reply
thingzero August 12, 2020 - 6:37 pm

Just tried getting a single application that’s been bugging me for months, on top of other apps that I use frequently, didn’t work. Spent over an hour going through this entire walk-through which I am grateful, but couldn’t get it to work at the installation of the .sdb part at command line. I didn’t see the installation complete dialog and when I tried to run the app, it says I need admin rights in order to run it when I’m the admin running admin privileges. I’m running the latest Windows 10 Pro 64bit 2004, MSDN build which I just downloaded and installed last night.

Anyways, I have the same gripe like most users, I don’t understand why MS can’t have an option that disables the UAC dialog box from appearing everytime startup launches my app, and every other app. Jumping through all these “fixes” just to find out hours later that it doesn’t work for me. Can’t believe there’s no easier way than this or the taskscheduler method, just pisses me off daily…

But thanks to the author for your time and effort in contributing this “fix” for the community, even though it didn’t work out for me. Thanks again.

Reply
Noxedwin September 1, 2020 - 7:43 pm

Heck yeah. Massively helpful. For some reason, certain Steam games dog-whistle the UAC prompt. I don’t want to have to tell the computer that – yes – I would like to play Phantasy Star Online 2 after saying that I would like to play it.

Many thanks!

(Sorry. The layout of the comments is a bit ambiguous. I didn’t notice that the “Leave a Comment” form was at the bottom. I thought the “Reply” button *was* to leave a comment.)

Reply
Douglas October 7, 2020 - 10:25 pm

Trying to use this, the applications I want to bypass UAC on runs fine in the Test Runs inside the application, but refuse to open outside of it. I have 3 applications these settings are applied to stored in one database, surely that’s not the issue. Installation of the database says it’s successful, but running the app brings up a text box titled ‘Fatal Error’ and the body contains ‘Failed to execute game’. No further details are presented.

Reply
Douglas October 7, 2020 - 10:32 pm

After some poking around, apparently I can’t run the applications in question in administrator mode if I want them to run at all. A very peculiar issue, not sure why that would cause any problems.

Reply
Fixing Cool Edit “Trial Version” and “This system has not been configured correctly” | Ray Woodcock's Latest October 11, 2020 - 3:35 am

[…] when I started Cool Edit. So my question was whether I could exclude ceregkey.exe from UAC. WindowsOSHub seemed to say that I could use the registry tweak summarized in this .reg […]

Reply
Danny November 12, 2020 - 2:39 am

If I make this .reg, can I port it to another computer without installing the windows tool?

Reply
Rowenn November 20, 2020 - 9:43 am

Thank you! For some reason my Adobe Illustrator and Premiere Pro kept asking for UAC despite of always removing the Run-As in the advanced options of each app, I’ve been looking for everywhere and got no fix until I found this.

Thank you very much!

Reply
KNBD December 6, 2020 - 12:18 pm

Thanks for this. I had a licensed copy of Microsoft Money 2005 (the last version of Money that Microsoft provided) and it had the annoying launch question. Your fix worked and has made my life much pleasanter. For other Money users, please note: After I had followed through the recommended procedure, I still had to go into the Registry, find the MsMoney AppCompatFlags>Layers entry for Money and manually change the entry to “RunAsInvoker” as discussed. Only then did MsMoney work without the “Do you want to allow this App to make changes to your device?” warning. With the Registry change made, Money works as you’d typically expect.

Reply
Mark December 30, 2020 - 3:26 am

Great guide thank you!

Reply
Jack Maynard April 16, 2021 - 11:04 pm

Thank you all for the guide. I have been searching for awhile now on how to do this. This one was flawless!

Reply
Adam July 21, 2021 - 6:40 am

This fix worked perfectly for me too. Thanks!!

Reply
Gabriel August 30, 2021 - 11:55 am

Just a word about the last resort (batch file) thing, it WILL work but you will probably (as far as I can guess) get security denials when trying to edit/add/delete certain keys or values whilst running regedit.exe, or access certain locations from within the program. It might even make some programs crash depending on the type of access they need to system resources. I assume with minimalist programs that run in a way that does not require special privileges, they most likely will run ok (might affect where you can save though!)

Reply
laika December 10, 2021 - 2:41 am

No joy here.
I’m doing this for dragon center. C:\Program Files (x86)\MSI\Dragon Center. It works fine from the compatibility administration. Then I create the entry at HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

Value name: C:\Program Files (x86)\MSI\Dragon Center\Dragon Center.exe
Value data: RunAsInvoker

But when it starts with the system, or if I execute it manually, the UAC still appears

Reply
equinoxx ‍ February 28, 2022 - 4:17 am

About Windows ADK:
If you want to bypass UAC for something, you shouldn’t have to install an application that requires UAC anyway. Why even bother?

Reply
Michael A February 28, 2022 - 3:46 pm

It can be a useful as a troubleshooting step or for simulating lower permissions in application development

Reply
equinoxx ‍ February 28, 2022 - 4:27 am

Also, the other options don’t work anyway. load of BS.

Reply
Pedro March 23, 2022 - 1:23 am

When running the test on the compatibility administrtator UAC does not prompt but…… when install and run from the executable UCM still showed. 🙁 any help will be appreciated.

Reply
XMuli August 18, 2022 - 2:18 am

This method is not valid for win10 21H2. But I found another method that still works with the latest Win10

[Use the finished product directly] https://github.com/XIU2/UACWhitelistTool
[principle or manual execution] https://zhuanlan.zhihu.com/p/113767050

PS: but it’s in Chinese, but it’s easy to use

Reply
Michael September 7, 2022 - 4:10 pm

Sweet, just what I needed for “Clover” Explorer Extension.

Reply
Warske November 12, 2022 - 9:51 pm

XMuli said (August 18, 2022): “This method is not valid for win10 21H2.”
But I tried it on my win10 21H2 and it did work (tested on application PowerChute.exe, not regedit).
I installed the ADK for Windows 10, version 1903.
The process worked perfectly until “Click Finish”
It didn’t ask for the package name, and it didn’t create a c:\ps\ folder.
I created a C:\sdb files\ folder and used
File, Save, C:\sdb files\PowerChute
which created the PowerChute.sdb file.
Then
File, Install
which returned: “The database ‘PowerChute’ was successfully installed.”
and no more UAC prompt for PowerChute.

Thanks for this fix!

Reply
Neal March 12, 2024 - 5:21 am

Thank you! This solution worked great for Win. 10 64 bit

Reply

Leave a Comment Cancel Reply

join us telegram channel https://t.me/woshub
Join WindowsHub Telegram channel to get the latest updates!

Recent Posts

  • How to Remove Old (Unused) PowerShell Modules

    January 12, 2026
  • How to Move (Migrate) Existing Windows Shares to a New File Server

    December 24, 2025
  • Using KDC (Kerberos) Proxy in AD for Remote Access

    December 23, 2025
  • Windows: Create (Install) a Service Manually

    December 16, 2025
  • Windows: Auto Switch to Strongest Wi-Fi Network

    December 10, 2025
  • How to Enable or Disable VBScript in Windows after Deprecation

    December 10, 2025
  • Start Menu Not Working (Unresponsive) on Windows Server RDS

    November 27, 2025
  • AppLocker: Configure Application Restriction Policies in Windows

    November 19, 2025
  • Enable/Disable Random Hardware (MAC) Address for Wi-Fi on Windows

    November 14, 2025
  • Automate Software and Settings Deployment with WinGet Configure (DSC)

    November 13, 2025

Follow us

  • Facebook
  • Twitter
  • Youtube
  • Telegram
Popular Posts
  • Booting Windows from GPT Disk on BIOS (non-UEFI) Computer
  • Removable USB Flash Drive as Local HDD in Windows
  • How to increase KMS current count (count is insufficient)
  • How to Connect L2TP/IPSec VPN Server From Windows
  • Managing Printers and Drivers on Windows with PowerShell
  • How to Install Only Specific Apps in Office 2021/2019 or Office 365
  • Managing Printers from the Command Prompt in Windows
Footer Logo

@2014 - 2024 - Windows OS Hub. All about operating systems for sysadmins


Back To Top