Можно ли запустить powershell, передав ему версию .NET CLR, которая нам нужна?Возможно указать версию PowerShell CLR в качестве аргумента
Systems с использованием Powershell V2 использование CLR версии 2 по умолчанию, и мы должны версии 4.
Мы могли бы реализовать конфигурационный файл:
- C: \ Windows \ System32 \ WindowsPowerShell \ v1. 0 \ PowerShell.exe.config
- C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 \ PowerShellISE.Exe.config
- C: \ Windows \ SysWOW64 \ WindowsPowerShell \ v1.0 \ PowerShell.exe.config
- C: \ Windows \ SysWOW64 \ WindowsPowerShell \ v1.0 \ PowerShellISE.exe.config
Как this:
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0.30319"/>
<supportedRuntime version="v2.0.50727"/>
</startup>
</configuration>
Но мы не хотим сделать изменения на серверах клиентов, которые могут потенциально излома другие программы, которые полагаются на PowerShell.
[Этот вопрос] (http://stackoverflow.com/a/5403227/517852) имеет некоторые интересные ответы, в частности, [это один] (HTTP: // stackoverflow.com/a/5403227/517852) об использовании файлов конфигурации активации для одноразовых вызовы с использованием .NET 4. –