В рамках процесса установки мне нужно включить роль сервера приложений. Мне нужно сделать это, чтобы получить функции распределенных транзакций, необходимые приложению. Я могу легко сделать это на сервере 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. Ищу любые варианты.