Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 以编程方式禁用用户访问控制以在控制台应用程序中运行命令_C#_Console Application - Fatal编程技术网

C# 以编程方式禁用用户访问控制以在控制台应用程序中运行命令

C# 以编程方式禁用用户访问控制以在控制台应用程序中运行命令,c#,console-application,C#,Console Application,我为运行命令提示符创建了一个控制台应用程序。现在我想在运行.exe文件时禁用用户访问控制权限。请解决这个问题 我必须从管理员处运行此命令。我在舱单中更改了requireAdministrator。但是我想禁用用户访问控制权限 这是我的密码: Process cmd = new Process(); cmd.StartInfo.FileName = "cmd.exe"; cmd.StartInfo.WorkingDirectory = @"C:\W

我为运行命令提示符创建了一个控制台应用程序。现在我想在运行.exe文件时禁用用户访问控制权限。请解决这个问题

我必须从管理员处运行此命令。我在舱单中更改了requireAdministrator。但是我想禁用用户访问控制权限

这是我的密码:

        Process cmd  = new Process();
        cmd.StartInfo.FileName = "cmd.exe";
        cmd.StartInfo.WorkingDirectory = @"C:\Windows\System32";
        cmd.StartInfo.Verb = "runas";
        cmd.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        cmd.StartInfo.RedirectStandardInput = true;
        cmd.StartInfo.RedirectStandardOutput = true;
        cmd.StartInfo.CreateNoWindow = true;
        cmd.StartInfo.UseShellExecute = false;
        cmd.Start();
        cmd.StandardInput.WriteLine(command);
        cmd.StandardInput.Flush();
        cmd.StandardInput.Close();
        Console.WriteLine(cmd.StandardOutput.ReadToEnd());

如果您以希望运行cmd.exe的用户的身份运行宿主程序Shift+右键单击->运行,它将自动以同一用户的身份运行您在程序中启动的cmd.exe。

您的应用程序无法以编程方式控制UAC行为,因为这是系统级安全功能

在您作为管理员的系统上,您可以做的是创建应用程序exe的提升快捷方式,并使用该快捷方式打开应用程序,避免出现UAC对话框

请看这里:


你不能禁用UAC。如果你能,每个人都会,那么UAC就没用了。