dro*_*ohm 2 powershell powershell-2.0 powershell-3.0
我已经安装了PowerShell v3的发布版本,但是在使用-Version参数时遇到了一些麻烦.我有很多需要.NET 4.0的模块,我使用PowerShell v2时没有使用以下powershell.exe.config文件:
<?xml version="1.0"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0.30319"/>
<supportedRuntime version="v2.0.50727"/>
</startup>
<runtime>
<loadFromRemoteSources enabled="true"/>
</runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)
这将允许我使用.NET 4.0 CLR运行PowerShell v2.一切都没有问题.
我现在已经安装了PowerShell v3的发布版本$PSVersionTable,只要我使用命令'powershell -version 2'并检查变量,它就会显示它已经加载了PowerShell v3(使用.NET 4.0).如果我删除powershell.exe.config上面的文件并运行相同的命令,则表明已加载PowerShell v2但使用的是.NET 2.0.
所以我的问题是:有没有办法加载PowerShell v2并让它像我以前在安装PowerShell v3之前那样使用.NET 4.0 CLR?或者PowerShell v3不允许这样做?
另外,我应该提一下为什么我要这样做 - 主要是在我们切换到V3时可能会出现任何不兼容问题.我计划用V3测试一切,但是能够退回到V2可以让我们免于很多麻烦.
发生的事情如下:
-Version 2简单吧?!
所以,如果你想在.NET 4上保留PSv2,你需要做的是手动禁用发布者策略.这可以在app.config文件中完成,请参阅此处的相关帖子.
| 归档时间: |
|
| 查看次数: |
1520 次 |
| 最近记录: |