PowerShell无法找到.NET框架
问题描述:
我刚刚从Visual Studio 2012升级到Visual Studio 2015.当我在Visual Studio中打开about框时,它告诉我它正在运行.NET版本4.6.00081。PowerShell无法找到.NET框架
虽然我似乎能够在PowerShell ISE中加载和运行脚本,但是从命令行运行PowerShell会给我以下错误。
.NET Framework的版本v4.6.00081未安装,需要运行版本3的Windows PowerShell的 。
我已经更新powershell.exe.config和powershell_ise.exe.config(下两个System32下和SYSWOW64文件夹)以下,但错误依然存在。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.6.00081"/>
<supportedRuntime version="v4.0.30319"/>
</startup>
</configuration>
我想运行一些现有的PowerShell脚本。我是C#开发人员,但我对PowerShell几乎一无所知。我尝试了所有我能想到的。我会喜欢一些关于我还能尝试的建议。
答
supportedRuntime
元素要求您指定CLR版本,而您在VS中看到的有关对话框的内容是.NET Framework版本。你不能认为两者是一回事。删除4.6行,你的错误应该消失。
谢谢。但是我试图让PowerShell使用当前版本的.NET。我以为我们已经完成了以前的版本。另外,这就是我在另一个系统上的方式。你是说我做不到? –
@JonathanWood,如果您的目标是要求您的应用只能在某个特定版本的.NET Framework上运行,则应该像这样指定它,https://github.com/lextm/sharpsnmplib/blob/master/Samples/ CSharp/snmpbulkget/app.config'sku'属性是这个应用程序要求的配置文件,如果该配置文件不存在,它会回落到下一个,或者什么也没有引发异常。 –