Executando o CMD como administrador com um argumento do C #
Eu quero corrercmd.exe
como administrador com argumentos deC # a fim de evitar umaUAC Aparecer. Isso é necessário para usá-lo como um processo de instalação automatizado. O comando que estou passando é simplesmente um caminho para o arquivo de instalação (.exe) com/q
para instalação silenciosa.
Quando executo esse código, há um pop-up CMD, mas ele é executado como se não tivesse executado nada.
public static string ExecuteCommandAsAdmin(string command)
{
ProcessStartInfo procStartInfo = new ProcessStartInfo()
{
RedirectStandardError = true,
RedirectStandardOutput = true,
UseShellExecute = false,
CreateNoWindow = true,
FileName = "runas.exe",
Arguments = "/user:Administrator cmd /K " + command
};
using (Process proc = new Process())
{
proc.StartInfo = procStartInfo;
proc.Start();
string output = proc.StandardOutput.ReadToEnd();
if (string.IsNullOrEmpty(output))
output = proc.StandardError.ReadToEnd();
return output;
}
}