在脚本中将PowerShell模式更改为STA

时间:2016-10-03 12:02:45

标签: wpf xaml powershell powershell-v2.0 sta

我有一个powershellscript,它使用XAML显示一个WPF表单。要执行此脚本,必须在STA模式下启动powershell控制台(在MTA模式下默认为PS 2.0)。

我知道有机会使用此命令更改控制台中的模式:

powershell -sta

但是将来我的脚本将由其他没有任何参数的程序自动执行。因此,无法首先使用-sta参数调用控制台。

是否有机会直接在powershell脚本中更改模式,因为WPF / XAML已启动?

1 个答案:

答案 0 :(得分:1)

这是一个简单的例子:

$x = {
    for($i= 0;$i -le 10;$i++){
        Write-host $i
    }
}

Start-Process Powershell.exe -argumentlist "-sta -NoExit -NoProfile -ExecutionPolicy Bypass -Command $X"