PowerShell Zip在Windows 7上不工作



我正在Windows 8.1和Windows 10上成功运行以下PowerShell脚本:

Add-type -A System.IO.Compression.FileSystem
[IO.Compression.Zipfile]::CreateFromDirectory('C:TestWiresharkCapture','C:TestWiresharkCapture.zip')

但是,当我在Windows 7上运行此脚本时,我遇到一个错误,即找不到System.IO.Compression.FileSystem程序集。

有人能告诉我需要做什么才能让PowerShell在Windows 7上访问此程序集吗?

这与Powershell本身无关。它更多的是关于安装的.NET版本。

它是从.NET framework 4.5版本开始包含的。

因此,您将无法使用较低版本的.NET.运行它

https://msdn.microsoft.com/en-us/library/system.io.compression.zipfile(v=vs.110).aspx

你必须检查你的.NET Framework版本。

根据MSDN的文章,您可以添加一个开关来返回4.5:之后发布的营销产品版本号

Get-ChildItem 'HKLM:SOFTWAREMicrosoftNET Framework SetupNDP' -recurse |
Get-ItemProperty -name Version,Release -EA 0 |
Where { $_.PSChildName -match '^(?!S)p{L}'} |
Select PSChildName, Version, Release, @{
  name="Product"
  expression={
      switch($_.Release) {
        378389 { [Version]"4.5" }
        378675 { [Version]"4.5.1" }
        378758 { [Version]"4.5.1" }
        379893 { [Version]"4.5.2" }
        393295 { [Version]"4.6" }
        393297 { [Version]"4.6" }
        394254 { [Version]"4.6.1" }
        394271 { [Version]"4.6.1" }
        394747 { [Version]"4.6.2" }
        394748 { [Version]"4.6.2" }
      }
    }
}

最新更新