Невозможно установить MSMQ на компьютере с Windows Server 2019 на базе Azure.
Довольно новая виртуальная машина. Я только добавил к ней IIS и загрузил исходный код веб-приложения. Затем я запускаю команду powershell...
Enable-WindowsOptionalFeature -Online -FeatureName MSMQ-Server -All
для поддержки некоторых устаревших функций приложения, но возникла ошибка...
Enable-WindowsOptionalFeature : The referenced assembly could not be found.
At line:1 char:1
+ Enable-WindowsOptionalFeature -Online -FeatureName MSMQ-Server -All
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Enable-WindowsOptionalFeature], COMException
+ FullyQualifiedErrorId : Microsoft.Dism.Commands.EnableWindowsOptionalFeatureCommand
Я заметил эти...
... но мне не удалось решить проблему, и я не уверен, насколько они связаны, учитывая различия в каждом из них.
Обычный процесс (например, https://support.mailessentials.gfi.com/hc/en-us/articles/360015143519--Installing-MSMQ-on-Windows-Server-2016) прохождения раздела «Программы и компоненты». «GUI выдает ту же ошибку.
Я выполнил следующие команды, чтобы убедиться, что система каким-либо образом не сломана, но они не обнаружили никаких проблем...
sfc /scannow
dism /Online /Cleanup-Image /CheckHealth
Есть ли способ установки вручную (возможно, загрузка MSI или что-то в этом роде)?
1 ответ
Похоже, что эта функция теперь устарела, старые версии ОС по-прежнему поддерживают ее, но Server 2019, похоже, не поддерживает ее, поэтому современные виртуальные машины, развернутые в Azure, вообще не поддерживают MSMQ.
В моем случае это не конец света, я смог заново реализовать один интерфейс в своем стеке кода и полностью удалить его, но другим, возможно, не так повезет.
Учитывая характер проблемы, с которой я столкнулся, я поднял заявку с приоритетом A в службу поддержки Azure, примерно через 5 они вернулись и сказали: «У меня нет для вас решений».
Я уже переписал со своей стороны, чтобы избежать этой проблемы, но это очень показательно.
Любой, кто использует MSMQ, разверните сервер 2016 или более ранние ОС, если он вам нужен, или если вы, как и я, можете его закодировать, я бы предложил это или заменить необходимость в MSMQ очередями Azure или чем-то еще.