Как программно включить роль сервера приложений в Windows 2008 R2 и Windows 7

В рамках процесса установки мне нужно включить роль сервера приложений. Мне нужно сделать это, чтобы получить функции распределенных транзакций, необходимые приложению. Я могу легко сделать это на сервере Windows 2012, выполнив dism.exe из приложения С#. Вот команда, которая выполняется.

dism /Online /Enable-Feature /FeatureName:Application-Server /FeatureName:AS-NET-Framework /FeatureName:AS-Ent-Services /FeatureName:AS-Dist-Transaction /FeatureName:AS-Incoming-Trans /FeatureName:AS-Outgoing-Trans

Но когда я пытаюсь сделать это на сервере Windows 2008 R2 или Windows 7, мне не удается указать, что DISM не распознает эти функции. Если я запускаю команду на этих машинах для перечисления функций (Get-Features), они действительно недоступны. Даже если я вручную включу роль сервера приложений с помощью диспетчера ролей и перечислю функции, доступные в DISM, они не будут перечислены или что-либо под другим именем, которое будет представлять роль сервера приложений.

Как программно включить роль сервера приложений на сервере Windows 2008 R2 и Windows 7 с помощью C#? Решение не требует использования DISM. Ищу любые варианты.


person Kevin Junghans    schedule 16.03.2015    source источник


Ответы (1)


Получается, что даже несмотря на то, что в Windows 2008 R2 Server Manager устарел, вы все равно можете использовать его для включения ролей. Вот команда, которую я использовал для его включения:

ServerManagerCmd -install Application-Server AS-Ent-Services AS-Dist-Transaction AS-Incoming-Trans AS-Outgoing-Trans

Вы получите следующее предупреждение, но оно работает.

Servermanagercmd.exe устарел, и его поддержка в будущих выпусках Windows не гарантируется. Мы рекомендуем использовать командлеты Windows PowerShell, доступные для диспетчера серверов.

Итак, как вы включаете его в Windows 7? Вы не можете, потому что это клиентская операционная система, и этих ролей не существует. Но в конечном итоге причина установки этой роли заключалась в установке и настройке распределенных транзакций. Оказывается, в Windows 7 координатор распределения транзакций уже доступен, и вам просто нужно его настроить.

person Kevin Junghans    schedule 17.03.2015