简体   繁体   English

C#-cmd以管理员身份运行,但无法执行CHKDSK

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM