.NET框架实际上不是4?

我正在编写一个PowerShell脚本运行在运行PowerShell v2的Windows Server 2008 R2上,它需要压缩文件的能力。 要做到这一点,我需要有这一行代码来导入程序集:

add-type -path "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\System.IO.Compression.FileSystem.dll" 

但是,当我运行代码时,它与以下错误:

 Add-Type : Could not load file or assembly 'file:///C:\Windows\Microsoft.NET\Framework64\v4.0.30319\System.IO.Compressi on.FileSystem.dll' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runt ime and cannot be loaded. 

所以我去检查使用这里提供的registry方法安装了什么.NET版本: Microsoft:如何确定哪些.NET Framework版本安装

当然,我已经开始了

 378758 == .NET Framework 4.5.1 installed on Windows 8, Windows 7 SP1, or Windows Vista SP2 

它甚至显示安装path为:

 C:\Windows\Microsoft.NET\Framework64\v4.0.30319 

有谁知道这里可能是什么问题? 或者我可以做一个解决方法( 没有软件更新/安装 )。