[英]C# - cmd run as administrator but cannot execute CHKDSK
I'm trying to run a CHKDSK in a cmd prompt launched with admin rights but the log file I create give me this message : 我试图在以管理员权限启动的cmd提示符下运行CHKDSK,但是我创建的日志文件给我以下消息:
Access denied you do not have sufficient privileges.
访问被拒绝,您没有足够的特权。 You have to invoke this utility running in elevated mode.
您必须调用在提升模式下运行的实用程序。
Here's my code : 这是我的代码:
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.CreateNoWindow = true;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.StartInfo.Verb = "runas";
process.StartInfo.FileName = "cmd";
process.StartInfo.Arguments = "/env /user:" + "Administrator" + " cmd";
process.StartInfo.CreateNoWindow = true;
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardInput = true;
process.Start();
System.IO.StreamReader SR;
System.IO.StreamWriter SW;
Thread.Sleep(200);
SR = process.StandardOutput;
SW = process.StandardInput;
string command = "CHKDSK.exe" + "/C" + " > " + "\"" + "C:\\Users\\Maha\\Documents\\log.txt" + "\"";
SW.WriteLine(command);
_errorMsg = process.StandardOutput.ReadToEnd();
process.WaitForExit();
I tried to run CHKDSK in admins right aswell but nothing changed. 我也尝试在管理员中运行CHKDSK,但没有任何改变。
Thanks for the help. 谢谢您的帮助。
Regards 问候
Try this: 尝试这个:
Open your Application "Manifest File". 打开您的应用程序“清单文件”。 Change the element requestedExecutionLevel to:
将元素requestExecutionLevel更改为:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
I had a similar problem once ;-) 我曾经有过类似的问题;-)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.