запуск SFC из приложения C #
Я искал и не могу получить эту работу. Я пытаюсь запустить SFC с помощью кнопки в приложении C #. Я знаю, что это требует повышения прав, и в рамках того, что я пытаюсь сделать, является поведение, которое я хочу.
Я пытался:Чтобы запустить cmd как администратор вместе с командой? Запуск CMD в качестве администратора с аргументом из C # а такжеC # как запустить процесс (с аргументами) через администратора с повышенными привилегиями
Последний код, который я пробовал:
private void button6_Click(object sender, EventArgs e)
{
ProcessStartInfo procStartInfo = new ProcessStartInfo("cmd", "/c " + "processNeedToRun")
{
RedirectStandardError = true,
RedirectStandardOutput = true,
UseShellExecute = false,
CreateNoWindow = true,
Verb = "runas"
};
}
Я либо не получаю процесс запуска вообще, мигает окно cmd, сообщающее о неверных учетных данных, либо команда неверна.
Что я делаю неправильно?
За добавленный комментарий я изменил это на это:
private void button6_Click(object sender, EventArgs e)
{
ProcessStartInfo procStartInfo = new ProcessStartInfo("cmd", "/c " + "sfc.exe /scannow")
{
RedirectStandardError = false,
RedirectStandardOutput = false,
UseShellExecute = true,
CreateNoWindow = false,
Verb = "runas"
};
}
и без изменений
РЕДАКТИРОВАТЬ:
Итак, мне удалось найти решение:
Я создал новое консольное приложение, отредактировал манифест с требованием администратора и сделал это
Process.Start("CMD.exe", " /c SFC /Scannow");
Это поведение, которое я хочу. Спасибо за помощь!