2014-04-01 53 views
0

我有一個PowerShell腳本(ps文件),我想從客戶機器上的C#WPF應用程序運行。我發現的大多數示例都使用PowerShell SDK,但我無法在客戶端計算機上安裝它。如何在沒有SDK的情況下運行PowerShell腳本文件?

如果我嘗試這樣運行了我的腳本簡單地用的Process.Start:

Process.Start("Powershell.exe", "myscript.ps"); 

我得到在命令窗口中出現以下錯誤:

File myscript.ps cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=135170. 
At line:1 char:1 
+ myscript.ps 
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
+ CategoryInfo   : SecurityError: (:) [], PSSecurityException 
+ FullyQualifiedErrorId : UnauthorizedAccess 

我看了一下鏈接,但我無法在客戶端的機器上設置ExecutionPolicy。

是否有任何其他方式從C#客戶端應用程序運行PS腳本而不使用SDK或設置ExecutionPolicy?

回答

2

對不起,我不知道C#,但有一個命令行選項的powershell.exe,這將幫助你,我很確定。

powershell.exe -ExecutionPolicy Bypass 
+0

我找到了解決辦法只是這一刻,這是對我工作的整個C#代碼:'的Process.Start( 「cmd.exe的」 @ 「/ C的PowerShell -ExecutionPolicy無限制myscript.ps1」); '。所以無限制爲我工作,我沒有嘗試繞過。謝謝! –

+0

無限制或繞過應該工作。我不確定有什麼區別。 –

相關問題