如何在c#中使用System.Diagnostics.Process.Start运行PowerShell脚本?

时间:2015-03-22 19:31:48

标签: c# powershell execute system.diagnostics

我写这个:

using System.Diagnostics;
Process.Start("C:\\CodeProjects\\C#\\WindowsPowerShell\\v1.0\\powershell_ise.exe", "-File .\\mp4_to_flac.ps1");

所有这一切都是打开 Windows PowerShell ISE中的脚本。但我也希望它运行!那么我还需要传递其他参数才能执行它?

Process.Start method Reference

2 个答案:

答案 0 :(得分:1)

您不想运行powershell_ise.exe而是运行powershell.exe。在dos命令提示符下,您可以使用@powershell为命令或脚本添加前缀,但对于您希望使用类似

的进程

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe

(在Win 8.1上是我的),如果你的版本不同,你的应该在附近。

chocolatey人扔进这些开关

-NoProfile -ExecutionPolicy unrestricted

从命令提示符执行powershell时,您可能还必须执行此操作,具体取决于执行策略的设置方式。

答案 1 :(得分:-1)

您可以这样称呼它:

Process.Start(".\\mp4_to_flac.ps1");

并确保所有Windows设置都正确无误,因此双击该文件即可执行该操作。

相关问题