c# - 如何使用 C# 执行 PowerShell 脚本
问题描述
我需要使用 c# 执行 PowerShell 脚本
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = @"cmd.exe";
startInfo.Arguments = @"powershell -File ""C:\Users\user1\Desktop\power.ps1""";
startInfo.Verb = "runas";
startInfo.RedirectStandardOutput = true;
startInfo.RedirectStandardError = true;
startInfo.UseShellExecute = false;
startInfo.CreateNoWindow = true;
Process process = new Process();
process.StartInfo = startInfo;
process.Start();
process.WaitForExit();
这不起作用。有人能帮我吗?我有一个 PowerShell 脚本文件,有时它会有要传递的参数
解决方案
从 C# 运行 .ps1 是一件非常普遍的事情,网络上有许多示例,Youtube 上的视频展示了如何/使用示例。
public static int RunPowershellScript(string ps)
{
int errorLevel;
ProcessStartInfo processInfo;
Process process;
processInfo = new ProcessStartInfo("powershell.exe", "-File " + ps);
processInfo.CreateNoWindow = true;
processInfo.UseShellExecute = false;
process = Process.Start(processInfo);
process.WaitForExit();
errorLevel = process.ExitCode;
process.Close();
return errorLevel;
}
以及查看这些 stackoverflowthreads。
推荐阅读
- r - 如何更改 SparklyR 中的默认 Spark_home 和 Java_home?(R Mac 操作系统)
- java - INTELLIJ - PKIX 路径构建失败:SunCertPathBuilderException:无法找到请求目标的有效认证路径
- video - 在 Raspberry CM3+ 上使用 bmp 命令在 u-boot 期间显示启动画面
- python - 带有 sympy 的拉普拉斯逆变换需要很长时间
- azure - 在逻辑应用中按降序列出 azure blob
- python - 在python中处理大量列表
- laravel - 检查登录时是否是管理员,Laravel
- google-chrome-extension - chrome 扩展:在 DOM 更改上运行观察者
- python - 将 Hrefs 写入 CSV 文件
- firebase - Flutter:Firebase 存储下载地址