2008-12-03 2 views
2

Я ищу способ программного изменения функций («Программы и функции» -> «Включить или отключить Windows-функции») в Windows Vista (и более новой версии Redmond OS, например Server 2008).Как я могу изменить функции в Windows Vista программно?

Идеальное решение было бы в виде сценария Powershell (Get-Features, Set-Features), однако любые указатели на MSDN/другую документацию были бы очень желанными! (мой первоначальный быстрый поиск Google/StackOverflow оказался пустым).

Наличие автоматического способа включения или отключения функций позволит мне автоматизировать настройку компьютера для разных сценариев. Например, для разработки приложений ASP.NET с использованием IIS необходимо установить набор функций IIS, которые по умолчанию не установлены. Мой текущий процесс «убедитесь, что по крайней мере функции, показанные на этом скриншоте, проверены» оставляет желать лучшего.

ответ

3

Я только что нашел расширение, которое работает на Windows 7. «модуль PowerShell для добавления/удаления Windows 7 функции» - https://psclientmanager.codeplex.com/

0

К сожалению, в WMI или в любой другой легкодоступной области, к сожалению, нет набора командлетов. Интересно, что функции управления ролью Server Core, основанные на скриптах, будут работать только на Server Core :). Windows 7 может принести некоторое облегчение в этом отношении, но это также может и не быть. В то же время вы в значительной степени остались с родными API Win32, упомянутыми в другом ответе.

Как ни в стороне, я должен указать, что MS сознательно не хочет, чтобы приложения, устанавливающие основные функции ОС, были связаны с соображениями безопасности. Добавление IIS не является чем-то легким, и оно включает в себя соображения безопасности и обязанности. Witness MS ', которые проверяют такие предварительные требования, но не предлагают устанавливать их для вас. Хотя я понимаю, что хочу настроить приложение как можно более безболезненное, также есть вред, который может быть нанесен при установке основных функций в ОС под чей-то нос :). Я лично предпочел бы, чтобы приложения ошибались на стороне осторожности, рассказывали мне, что им нужно, и позволяйте мне принимать решения о том, как и что устанавливать, особенно важные функции, которые откроют порты и смогут выполнять произвольный код, например IIS ,

+0

Ну, я хотел бы, чтобы мои машины были настроены повторяемо. Я хочу, чтобы все мои dev-машины имели определенные функции. Вы говорите, что ЛУЧШЕ вручную выбрать все функции для КАЖДОЙ машины на основе скриншотов/письменных заметок? – 2009-01-22 15:40:42

1

В Windows Server 2008 есть команда ServerManagerCmd. Это может установить IIS с или без необходимых подфункций. Вы также можете установить/удалить большинство основных функций Windows.

  1. Вы можете настроить свой сервер так, как вы хотите, а затем запустить ServerManagerCmd -query template.xml. Это экспортирует конфигурацию в файл Xml.
  2. Вы должны transform the file подготовить его для использования на других серверах
  3. Копирование преобразованный файл на сервер, который требуется настроить и запустить Servermanagercmd -inputPath transformTemplate.xml
1

способ сделать это в перспективе и Windows 2008 с инструментом командной строки PKGMGR. Найдите MSDN для этого инструмента, чтобы найти список функций/пакетов.

1

Он выглядит в прямом эфире Powershell V2 на сервере 2008 R2 (бета) имеет модуль, который выполняет именно это. Будем надеяться, что Windows 7 будет иметь эту функциональность, а также ...

Для получения более подробной информации см Managing Server Features with PowerShell Cmdlets on Windows 2008 Server R2 Beta

+0

Есть ли сопоставимый модуль для Windows 7 x64? когда я пытаюсь запустить «Import-Module ServerManager», я получаю следующую ошибку: «Указанный модуль« ServerManager »не был загружен, потому что в любом каталоге модулей не было найдено допустимого файла модуля». Должен ли я загрузить его где-нибудь? Есть ли другой модуль для использования? Любая помощь очень ценится! – 2011-09-28 12:54:02

Смежные вопросы