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         }

示例代码

相关推荐
yue0084 小时前
C# 实现日志记录功能
c#·日志记录
99乘法口诀万物皆可变4 小时前
CANdelaStudio类似页面制作方案
c#
ytttr8735 小时前
基于C#的CAN总线数据解析BMS上位机
android·unity·c#
在路上看风景5 小时前
1.10 线程其他操作
c#
步步为营DotNet5 小时前
深度解析C# 11的Required成员:编译期验证保障数据完整性
java·前端·c#
diegoXie6 小时前
【Python】 中的 * 与 **:Packing 与 Unpacking
开发语言·windows·python
武藤一雄7 小时前
C# 语法糖详解
后端·microsoft·c#·.net
武藤一雄8 小时前
C#:进程/线程/多线程/AppDomain详解
后端·微软·c#·asp.net·.net·wpf·.netcore
曹牧8 小时前
在C#中,string和String
开发语言·c#
小菱形_10 小时前
【C#】LINQ
开发语言·c#·linq