Проверьте, установлена ли более новая версия AppxPackage

#powershell #uwp #windows-10-universal #appx

#powershell #uwp #windows-10-universal #appx

Вопрос:

Я хотел знать, можно ли проверить, установлена ли более новая версия пакета в Powershell.

Я хотел установить пакет «Microsoft.VCLibs.x86.14.00.appx» через powershell.

Я делаю это с помощью команды: Add-AppxPackage .Майкрософт.VCLibs.x86.14.00.appx

но затем я получаю сообщение об ошибке: HRESULT: 0x80073D06, Пакет не удалось установить, поскольку более высокая версия этого пакета уже установлена.

Я проверил с помощью Get-AppxPackage * Microsoft.vclibs.14 * и да, есть более высокая версия. Итак, есть ли способ получить доступ к версии и сравнить их? а затем решите, устанавливать пакет или нет?

как скрипт, в котором я получаю установленные пакеты через «Get-AppxPackage * Microsoft.vclibs.14 *», чтобы получить результат и получить доступ к версии?

Ответ №1:

 $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
}
  

Комментарии:

1. Для меня $FileVersion = (Get-ItemProperty -Path $FilePath). Информация о версии. ProductVersion пуста, есть идеи, почему?