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#中的继承
开发语言·c#
吴可可12312 小时前
C#AutoCAD二次开发打断多段线
c#
剪刀石头布Cheers13 小时前
NDM浏览器插件无法连接后台的问题
windows·端口冲突·ndm
-银雾鸢尾-14 小时前
里氏替换原则
开发语言·c#·里氏替换原则
-银雾鸢尾-18 小时前
C#中的索引器
开发语言·c#
PiaoShiSun18 小时前
Windows环境下批量删除文件夹内仅有1个/2个/*个文件的文件夹
windows·批量删除单文件的文件夹
en.en..18 小时前
冒泡排序与选择排序完整对比解析
开发语言·数据结构·算法·c#·排序算法
足球中国19 小时前
nuget把缓存搬离C盘
c语言·windows·缓存
geovindu19 小时前
CSharp: Decorator Pattern
开发语言·后端·c#·装饰器模式·结构型模式
淡海水20 小时前
06-04-YooAsset源码-Unity加密解密服务
前端·unity·性能优化·c#·游戏引擎·yooasset