Назад | Перейти на главную страницу

Автоматизировать создание сценария запуска Windows?

Есть ли хороший способ автоматизировать установку сценариев локального запуска (а не входа в систему) в Windows XP и Windows 7 через командную строку, WMI, COM или иначе (даже Win32, если до этого дойдет)?

Мне нужно настроить локальный сценарий запуска на большом количестве компьютеров, и, к сожалению, Active Directory абсолютно не подходит. Я хотел бы написать сценарий или небольшую программу, которую я мог бы запускать на каждом компьютере для выполнения установки сценария запуска, чтобы сэкономить много ручного труда, подверженного ошибкам.

Я вижу, что когда кто-то использует gpedit.msc для создания локального сценария запуска информация о сценарии сохраняется в реестре здесь:

HKLM\Software\Policies\Microsoft\Windows\System\Scripts\Startup

Однако, если вы создадите такой сценарий, а затем удалите его раздел реестра, сценарий останется в списке в редакторе локальной групповой политики; как это часто бывает в Windows, очевидно, что там происходит больше, чем кажется на первый взгляд. Это заставляет меня задаться вопросом, безопасно ли вручную добавлять сюда подключи для новых сценариев запуска (например, я бы не хотел, чтобы мой сценарий был перезаписан более поздними изменениями, внесенными с помощью редактора локальной групповой политики) ...

Еще один вариант, который пришел мне в голову, - создать элемент в планировщике задач, настроенный для запуска при запуске системы. Однако меня беспокоит двоякое:

  1. Можно ли это еще проще автоматизировать? Например, at команда не позволяет вам запланировать задачу для запуска системы, а WMI Win32_ScheduledJob интерфейс выглядит ненадежным (во-первых, он не отображает ни одной из моих запланированных задач).

  2. Смогу ли я запретить пользователям входить в систему до завершения запланированной задачи запуска, как это можно сделать с помощью «обычных» сценариев запуска Windows?

Заранее спасибо за любые предложения, я уже немного бился головой об этот ...

Создайте запланированную задачу, которая запускается при запуске системы. Автоматизируйте это с помощью SCHTASKS.EXE. Вам нужен тип расписания ONSTART.

Я так и не нашел чистого решения этой проблемы. Следующий подход запутан, но для моих целей он сработал:

http://www.office-outlook.com/outlook-forum/index.php/m/626059

Попробуйте скопировать две папки в C: \ Windows \ System32 \ GroupPolicy на новый компьютер, перезагрузитесь и запустите gpupdate /force

Если вы хотите попробовать запланированный способ задачи, используйте Schtasks. Это надежнее, чем at и можете позволить вам выбрать вариант входа в систему. Однако перед входом в систему он не дожидается завершения.