C#开启和关闭UAC功能

在开发软件或制作安装包时,有时会需要管理员权限 ,但是又不想弹出UAC对话框。

可以编写一个小工具,检测UAC是否关闭。如果没有关闭,就自动关闭UAC。

实现比较简单,

找到注册表

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System 下的EnableLUA 值,改为0 。默认是1

C#实现代码如下

复制代码
 1  private bool DisableUAC()
 2         {
 3             try
 4             {
 5                 string path = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System";
 6                 string uac = "EnableLUA";
 7                 RegistryKey key = Registry.LocalMachine.CreateSubKey(path);
 8                 if (key != null)
 9                 {
10                     key.SetValue(uac, 0, RegistryValueKind.DWord);
11                     key.Close();
12                 }
13 
14                 return true;
15             }
16             catch(Exception ex)
17             {
18                 MessageBox.Show(ex.Message);
19                 return false;
20             }
21         }
22 
23         private void Reboot()
24         {
25             System.Diagnostics.Process.Start("shutdown", " -r -t 0");
26         }

示例代码

相关推荐
beyond谚语1 小时前
反射、特性和依赖注入
c#
x***r1511 小时前
procexp64使用步骤详解(附进程分析与句柄查看教程)
windows
Tiger_shl2 小时前
C# 托管对象、非托管对象 讲解
开发语言·c#
LF男男2 小时前
Action- C# 内置的委托类型
java·开发语言·c#
2501_939998204 小时前
2026.4.17 更新|一键获取 Win11 25H2 镜像文件
windows
xinhuanjieyi4 小时前
windows安装vscode服务端
ide·windows·vscode
叶之香5 小时前
探究 libhv Socketpair 在 clumsy 模拟延迟下的“超时”之谜
windows·websocket
拾薪5 小时前
【hermes】windows 安装hermes,配置glm
windows·安装·install·win·hermes·wins
雪域迷影5 小时前
Windows上使用VS2026和CMake编译LearnOpenGL项目源代码
windows·cmake·opengl·vs2026·gthub
东北甜妹5 小时前
windows
windows