Exchange Server 2019 программа установки не запускается должным образом при запуске из PowerShell с помощью Setup.exe

Симптомы

Рассмотрим следующий сценарий.

  • Вы планируете запустить автоматическую установку для обновления Microsoft Exchange Server 2019, Microsoft Exchange Server 2016 или Microsoft Exchange Server 2013 из PowerShell или командной строки с помощью Setup.exe
  • Установочный носитель находится на диске D:
  • Автоматическая установка запускается из PowerShell или командной строки как "setup.exe /m:upgrade /IAcceptExchangeServerLicenseTerms" вместо ".\setup.exe /m:upgrade /IAcceptExchangeServerLicenseTerms" (PowerShell) или "D:\setup.exe /m:upgrade /IAcceptExchangeServerLicenseTerms" (PowerShell или командная строка).

В этом случае запускается программа установки Exchange Server, которая может указывать на то, что она успешно завершена. Однако сам Exchange не обновляется.

Причина

При выполнении команды в PowerShell или командной строке сначала проверяются пути в переменной системной среды Path, чтобы проверить выполнение команды, прежде чем будет установлен текущий путь в PowerShell или командной строке, если:

  • "." вводится перед командой или программой, выполняемой в PowerShell, или
  • клавиша TAB используется для автоматического добавления "." перед командой или программой, выполняемой в PowerShell, или
  • полный путь используется для запуска setup.exe (например, "D:\setup.exe /m:upgrade /IAcceptExchangeServerLicenseTerms") в PowerShell или командной строке.

Файл setup.exe, расположенный в C:\Program Files\Microsoft\Exchange Server\V15\bin , найден и выполняется с помощью PowerShell, а не setup.exe в текущем пути.

Обходной путь

Если вы запускаете обновление, используйте ".\setup.exe /m:upgrade /IAcceptExchangeServerLicenseTerms" (PowerShell) или "D:\setup.exe /m:upgrade /IAcceptExchangeServerLicenseTerms" (PowerShell и командная строка) для запуска команды.