我想知道是否可以检查Powershell中是否安装了较新版本的软件包。
我想通过powershell安装包“Microsoft.VCLibs.x86.14.00.appx”。
我通过命令执行此操作:Add-AppxPackage。\ Microsoft.VCLibs.x86.14.00.appx
但后来我收到错误:HRESULT:0x80073D06,无法安装包,因为已安装此软件包的更高版本。
我检查了Get-AppxPackage * Microsoft.vclibs.14 *,是的,有更高的版本。那么有没有办法访问该版本并进行比较?而不是决定安装包?
像一个脚本,我通过“Get-AppxPackage * Microsoft.vclibs.14 *”得到已安装的软件包,并获得结果并访问该版本?
$FilePath = ".\Microsoft.VCLibs.x86.14.00.appx"
$FileVersion = (Get-ItemProperty -Path $FilePath).VersionInfo.ProductVersion
$HighestInstalledVersion = Get-AppxPackage -Name Microsoft.VCLibs* |
Sort-Object -Property Version |
Select-Object -ExpandProperty Version -Last 1
if ( $HighestInstalledVersion -lt $FileVersion ) {
Add-AppxPackage $FilePath
}