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         }

示例代码

相关推荐
-银雾鸢尾-1 小时前
C#中的反射关键类-Type
开发语言·c#
七仔啊2 小时前
windows server 2022 安装 Linux Docker
linux·windows·docker
看浪的路人2 小时前
第4讲:MCP Client 开发——连接、发现、调用
windows·python·ai
淡海水3 小时前
15-07-YooAsset面试篇-Unity性能优化与内存管理
java·unity·面试·性能优化·c#·游戏引擎
洛水如云4 小时前
旧电脑数据迁移到新电脑,4种方法按场景选
windows·microsoft·电脑
hez201015 小时前
.NET 11 Runtime Async 详解
c#·.net·.net core
猿长大人17 小时前
C# | Serilog 新手入门
开发语言·c#·.net·log
在世修行18 小时前
从零打造 C# 工业视觉检测系统(七):串口通信 SerialPort 封装与开发
开发语言·c#·modbus rtu·rs232/rs485
醉城夜风~19 小时前
(超详细)C++ STL list容器详解:从使用方法到双向链表底层原理全面解析
c++·windows
凤山老林20 小时前
在 Apple 芯片的 Mac 上通过 VMware Fusion 使用 Windows 11
windows·macos·vmware·虚拟机