我在Windows 8.1和Windows 10上成功运行以下PowerShell脚本:
Add-type -A System.IO.Compression.FileSystem
[IO.Compression.Zipfile]::CreateFromDirectory('C:\Test\WiresharkCapture','C:\Test\WiresharkCapture.zip')
但是,当我在Windows 7上运行此脚本时,出现无法找到System.IO.Compression.FileSystem程序集的错误。
有人可以告诉我需要做什么让Windows 7上的PowerShell可以访问此程序集吗?
答案 0 :(得分:-1)
它不是关于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:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -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" }
}
}
}