还是很感谢你的回复。
现在有2种命令方式。
方式1。
[C#] 纯文本查看 复制代码 var processInfo = new System.Diagnostics.ProcessStartInfo
{
Verb = "runas",
LoadUserProfile = true,
FileName = "powershell.exe",
Arguments = "Start-sleep -seconds 10",
RedirectStandardOutput = false,
UseShellExecute = true,
CreateNoWindow = true
};
var p = System.Diagnostics.Process.Start(processInfo);
方式2
[C#] 纯文本查看 复制代码 var cmd = "mshta.exe vbscript:CreateObject(\"Shell.Application\").ShellExecute(\"powershell.exe\",\"Start-VM -name 'win11-Lite'\",\"\",\"runas\",1)(window.close)";
process.Start();
process.StandardInput.WriteLine(cmd);
process.StandardInput.AutoFlush = true;
process.StandardInput.WriteLine("exit");
其中方式1,在用户点击取消授权时,程序会崩溃。
方式2 没有这个问题。 |