public void ProcessStartAsAdmin(string command)
{
Process myProcess = new Process();
myProcess.StartInfo.FileName = @"C:\application.EXE";
myProcess.StartInfo.Verb = @"runas";
myProcess.StartInfo.Arguments = command;
myProcess.Start();
}
Dos框快速关闭,我无法判断是否有任何错误或是否成功完成。在我手动关闭它之前,有没有让窗户保持活着状态?
答案 0 :(得分:4)
不是运行应用程序,而是启动一个新的shell(cmd.exe)并让该shell通过传递命令来运行该应用程序来运行该应用程序。然后,只要您想使用“exit”命令,就可以退出shell。
另一个类似的解决方案是创建一个只执行此命令的批处理脚本,然后暂停用户输入,要求它关闭。然后,您的程序将执行该脚本,而不是直接执行应用程序。
另一个选项是将标准输出重定向到您的应用程序,而不是将其打印到控制台,允许您在程序完成执行后对输出执行任何操作。