Abh*_*pta 3 windows powershell zip
我在 Windows Powershell 中看到以下奇怪的行为。
脚本1:
Add-Type -AssemblyName System.IO.Compression.FileSystem
[System.IO.Compression.ZipArchiveMode]::Update
Run Code Online (Sandbox Code Playgroud)
输出:
PS C:\Users\Administrator> C:\Users\Administrator\Documents\Untitled1.ps1
Unable to find type [System.IO.Compression.ZipArchiveMode].
At C:\Users\Administrator\Documents\Untitled1.ps1:3 char:1
+ [System.IO.Compression.ZipArchiveMode]::Update
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.IO.Compression.ZipArchiveMode:TypeName) [], RuntimeException
+ FullyQualifiedErrorId : TypeNotFound
Run Code Online (Sandbox Code Playgroud)
脚本2:
Add-Type -AssemblyName System.IO.Compression.FileSystem
[IO.Compression.ZipFile]::Open
[System.IO.Compression.ZipArchiveMode]::Update
Run Code Online (Sandbox Code Playgroud)
输出:
PS C:\Users\Administrator> C:\Users\Administrator\Documents\Untitled1.ps1
OverloadDefinitions
-------------------
static System.IO.Compression.ZipArchive Open(string archiveFileName, System.IO.Compression.ZipArchiveMode mode)
static System.IO.Compression.ZipArchive Open(string archiveFileName, System.IO.Compression.ZipArchiveMode mode, System.Text.Encoding entryNameEncoding)
Update
Run Code Online (Sandbox Code Playgroud)
为什么 Script1 无法加载[System.IO.Compression.ZipArchiveMode]::Update?如何修复 Script1 以确保[System.IO.Compression.ZipArchiveMode]::Update正确加载?
您还需要加载System.IO.Compression程序集,而不仅仅是System.IO.Compression.FileSystem:
# Note: Only necessary in *Windows PowerShell*.
# (These assemblies are automatically loaded in PowerShell (Core) 7+.)
Add-Type -AssemblyName System.IO.Compression, System.IO.Compression.FileSystem
# Verify that types from both assemblies were loaded.
[System.IO.Compression.ZipArchiveMode]; [IO.Compression.ZipFile]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2085 次 |
| 最近记录: |