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

C#-cmd以管理员身份运行,但无法执行CHKDSK,c#,cmd,administrator,rights,C#,Cmd,Administrator,Rights,我试图在使用管理员权限启动的cmd提示符中运行CHKDSK,但我创建的日志文件显示以下消息: 访问被拒绝您没有足够的权限。 您必须调用此在提升模式下运行的实用程序 这是我的密码: System.Diagnostics.Process process = new System.Diagnostics.Process(); process.StartInfo.CreateNoWindow = true; process.Sta

我试图在使用管理员权限启动的cmd提示符中运行CHKDSK,但我创建的日志文件显示以下消息:

访问被拒绝您没有足够的权限。 您必须调用此在提升模式下运行的实用程序

这是我的密码:

            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();
我也尝试在admins中运行CHKDSK,但没有任何改变

谢谢你的帮助

关于

试试这个:

打开应用程序“清单文件”。将元素requestedExecutionLevel更改为:

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />


我曾经有过类似的问题;-)

谢谢。它现在工作得很好!但一旦我的应用程序以发布模式构建,当用户启动时,他应该以管理员的身份运行它,我猜?为了避免这种情况?(这是在客户端计算机上自动启动的应用程序)。