我已经制作了一个c#控制台应用程序,该应用程序正在启动Powershell管道实例并添加命令“ Stop-Computer”来执行,但是在执行该命令时,会出现错误“未保留特权”。
这是我的代码。
using(System.Management.Automation.PowerShell powershellInstance = System.Management.Automation.PowerShell.Create())
{
powershellInstance.AddCommand("Stop-Computer");
powershellInstance.Invoke();
if(powershellInstance.Streams.Error.Count > 0)
{
foreach(var error in powershellInstance.Streams.Error)
{
Console.WriteLine(error);
}
}
Console.ReadKey();
}
我从该链接中学到了一些使用c#实现powershell命令的经验。
https://blogs.msdn.microsoft.com/kebab/2014/04/28/executing-powershell-scripts-from-c/
我也正在以管理员身份执行此控制台应用程序的.exe,但它不能正常工作。
我实际上如何使用C#在Powershell实例上获得特权?