Настройка автозагрузки приложений в операционных системах Windows

OSzone.net » Microsoft » Windows 7 » Проблемы и решения » Настройка автозагрузки приложений в операционных системах Windows
Автор: Dmitry_Bulanov
Иcточник: dimanb.spaces.live.com
Опубликована: 04.03.2010

У многих пользователей после продолжительной работы с операционной системой и после установки/удалений разнообразных приложений часто возникают вопросы по автозагрузке приложений. Вместе с операционной системой могут загружаться ненужные для вас приложения или наоборот, приложение которое должно запускаться автоматически не наблюдается в области уведомлений после загрузки системы, а также производительность системы и время запуска может значительно ухудшиться. Для того чтобы избежать этих проблем я предлагаю разобраться с процессами, которые выполняются при загрузке операционной системы и с автозагрузкой установленных приложений.

Загрузка операционной системы

Важно отметить, что на самом деле загрузка Windows начинается не с того момента как вы подошли к персональному компьютеру и включили или перезагрузили его, процесс загрузки операционной системы на самом деле начинается непосредственно с ее установки. В ходе выполнения процесса установки, жесткий диск подготавливается для своего участия в процессе загрузки системы. В это время создаются компоненты, которые участвуют в загрузке базовой системы ввода/вывода (BIOS). К этим компонентам можно отнести:

Важно понимать, что драйверы устройств являются важнейшей частью процесса загрузки. При указании раздела операционной системы, установочная программа записывает загрузочный сектор. Загрузочный сектор Windows дает информацию о структуре и формате раздела файлу Bootngr. Bootmgr выполняет свою работу в то время, когда операционная система начинает свой жизненный цикл в режиме реального времени. Затем Bootmgr вычитывает файл BCD из папки \Boot, расположенной в системном разделе. Если в BCD файле указаны настройки о выходе из режима гибернации, то Bootmgr запускает процесс Winresume.exe, который будет читать содержимое файла для возобновления системы из спящего режима.

Если в записи BCD существует две и более системы, то Bootmgr отображает пользователю загрузочное меню для выбора операционной системы. После выбора системы или, в том случае, если у вас установлена только одна операционная система, загружается процесс Winload.exe. Этот процесс загружает файлы, расположенные в загрузочном разделе и стартует инициализацию ядра. Winload.exe выполняет следующие действия:

  1. Загружает ядро и образы HAL (Ntoskrnl.exe и Hal.dll), а также все их зависимости. Если у Winload.exe не получается запустить образы HAL или их зависимости, вы увидите соответствующее предупреждение;
  2. Вычитывает файлы VGA шрифтов (Vgaoem.fon);
  3. Вычитывает файлы национальных языковых систем (National Language System - NAL) для использования интернационализации;
  4. Вычитывает раздел реестра \Windows\System32\Config\System для определения драйверов устройств необходимых для загрузки операционной системы;
  5. Сканирует раздел системного реестра SYSTEM и находит все драйверы устройств загрузки. Эти драйверы указаны в реестре со значением SERVICE_BOOT_START (0) в разделе HKLM\SYSTEM\CurrentControlSet\Services;

  6. *
    Увеличить рисунок

  7. Добавляет драйверы файловой системы, отвечающие за реализацию кода для раздела NTFS;
  8. Загружает системные драйверы из загрузочного раздела. В это время для пользователя отображается текст «Запуск Windows» с символикой операционной системы;
  9. Подготавливает регистры процессора для выполнения Ntoskrnl.exe.

Затем начинается инициализация ядра и исполнительных подсистем. После того как Windows вызывает Ntoskrnl, он передает данные параметров блока загрузчиков, которые содержат системные пути загрузочного раздела сгенерированного Winload для описания физической памяти в системе. По завершению двух этапов (Session 0 и Session 1) инициализации ядра стартуют процессы Smss.exe, Csrss.exe и Wininit. Smss вызывает исполнительный менеджер конфигурации подсистемы для окончания инициализации системного реестра.

После этого запускается процесс запуска оболочки системы Winlogon, параметры которого указаны в разделе реестра HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Userinit. Winlogon уведомляет систему о зарегистрированных поставщиках сетевых услуг, прошедших идентификацию поставщиков сетей Microsoft (Mpr.dll).

Последним этапом загрузки системы является процесс автоматического запуска приложений при загрузке и входе в операционную систему.

Управление автозапуском

Большинство приложений, которые автоматически запускаются с операционной системой, вы можете увидеть в области уведомлений. О методах настройки области уведомлений я рассказывал в статье «Настройка области уведомлений Windows 7», поэтому в рамках этой статьи настройка области уведомлений рассматриваться не будет. Для управления приложениями автозапуска, пользователи операционных систем Windows обычно используют утилиту «Конфигурация системы».

Утилита «Конфигурация системы»

Программа «Конфигурация системы» - это утилита операционной системы Windows, предназначенная для управления автоматически запускаемыми программами и загрузкой системы, а также определения проблем, которые могут помешать запуску операционной системы в обычном режиме. При помощи этой утилиты вы можете изменять параметры загрузки, отключать службы и автоматически запускаемые программы. Эта утилита впервые появилась в операционной системе Windows 98, предоставляя удобный интерфейс для выполнения своих задач. Утилита вызывается файлом MSConfig.exe, который расположен в папке System32 раздела с установленной операционной системой. Огромным недостатком этой утилиты является отсутствие возможности добавления нового элемента в автозапуск. Для того чтобы открыть эту утилиту выполните любое из следующих действий:

На следующем скриншоте отображена утилита «Конфигурация системы»:

*
Увеличить рисунок

В текущей утилите существует пять вкладок:

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

Управление автозапуском средствами системного реестра

В системном реестре вы можете найти параметры автозапуска приложений для учетной записи компьютера и учетной записи текущего пользователя. Приложения, которые запускаются с учетной записью компьютера, не зависят от того, под какой записью пользователь выполнил вход в систему. Эти параметры вы можете найти в разделе HKLM\Software\Microsoft\Windows\CurrentVersion\Run. Приложения, которые запускаются с учетной записью пользователя, для каждой учетной записи могут отличаться. Эти параметры вы можете найти в разделе HKCU\Software\Microsoft\Windows\CurrentVersion\Run.

Для того чтобы добавить новое приложение (программу «Редактор реестра») в автозапуск операционной системы Windows для всех существующих пользователей, выполните следующие действия:

  1. Откройте редактор реестра;
  2. Перейдите в раздел HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run;

  3. *
    Увеличить рисунок

  4. Создайте строковый параметр. Название можете указать произвольное, например, Regedit. В значении параметра укажите полный путь к приложению и, при необходимости, параметры для запуска, например, c:\Windows\System32\.regedit32.exe;
  5. Перезагрузите компьютер.

Но для более опытных пользователей операционных систем Windows, работы утилиты «Конфигурация системы» и двух разделов реестра может быть недостаточно, так как неизвестно что загружалось вместе с системой помимо программ автозапуска и системных служб. Для того чтобы узнать обо всех процессах, которые были запущены вместе с вашей системой, вам поможет утилита Autoruns от Sysinternals.

Работа с утилитой Autoruns

Программа Autoruns от Марка Руссиновича и Брайса Когсуэлла помогает проверять максимальное количество размещений автозапуска на наличие программ, настроенных на запуск в процессе загрузки или входа в систему, в отличие от любых других программ мониторинга автозапуска. Сейчас доступна версия 8.61 и ее можно загрузить по следующей ссылке. Эта программа абсолютно бесплатна и к одному из ее преимуществ можно отнести то, что все программы отображаются в том порядке, в каком операционная система обрабатывает их. На самом деле, такие программы могут располагаться не только в разделах Run, а также в RunOnce, ShellExecuteHooks, ContextMenuHandlers и в других разделах системного реестра. С данной программой можно работать как под 32-разрядными, так и под 64-разрядными операционными системами Windows.

Перед запуском этой утилиты в первый раз отобразится диалоговое окно с лицензионным соглашением. Прочитайте его и нажмите на кнопку «Agree».

*

После загрузки текущей программы вы увидите приложения, настроенные для автоматического запуска, где вы можете найти названия приложений и разделы системного реестра, в которых хранятся сведения об их запуске, краткое описание приложения, издателя, а также путь к запускаемому файлу или библиотеке.

Элементы, которые отображает программа Autoruns, принадлежат к нескольким категориям, которые можно просмотреть на 18-ти вкладках программы. В данной статье мы не будем рассматривать каждую вкладку, но стоит отметить, что к категориям программы можно отнести: объекты, автоматически запускаемые при входе в систему, дополнительные компоненты проводника, дополнительные компоненты Internet Explorer, задачи планировщика, библиотеки DLL инициализации приложений, объекты, исполняемые на ранних стадиях загрузки, службы Windows и многое другое.

*
Увеличить рисунок

На каждой вкладке вы можете:

По умолчанию, в программе Autoruns отображаются все приложения и библиотеки, запускаемые автоматически с операционной системой. Для того чтобы отображались только те приложения, которые прописаны в разделах реестра \Software\Microsoft\Windows\CurrentVersion\Run, перейдите на вкладку «Login».

*
Увеличить рисунок

Помимо приложений, запускаемых автоматически с операционной системой, вы можете просмотреть все задания, назначенные планировщиком при загрузке или входе в систему. Для этого перейдите на вкладку «Scheduled tasks». На этой вкладке, при выборе команды контекстного меню «Jump to» или двойному щелку мыши на определенном объекте откроется оснастка «Планировщик заданий» с указанной задачей.

*
Увеличить рисунок

Вы можете сохранить объекты автозапуска по нажатию на кнопку «Save» на панели инструментов или выбрав данную команду в меню «File». Отчет будет сохранен с расширением *.arn или *.txt. Для того чтобы загрузить сохраненные ранее данные программы Autoruns воспользуйтесь командой «Open» меню «File».

Использование утилиты Autoruns для управления объектами автозапуска средствами командной строки

Если вы предпочитаете работать с консолью, вы также можете воспользоваться командами утилиты Autoruns. С ее помощью вы можете выполнять те же действия, что и с утилитой Autoruns, только при помощи командной строки, выводя информацию в окно консоли или перенаправляя вывод команды в текстовый файл. В связи с тем, что данная утилита открывается только средствами командной строки, для работы с Autoruns, выполните следующие действия:

  1. Откройте командную строку от имени администратора;
  2. Перейдите в папку с загруженной утилитой Autoruns, например «C:\Program Files\Sysinternals Suite\»;
  3. Запустите утилиту с необходимым параметром.

Доступны следующие параметры:

-a – отображение всех элементов автозапуска;

-b – отображение информации об объектах, которые загружаются на ранних стадиях загрузки системы;

-c – экспорт отображаемых данных в CSV-файл;

-d – отображение библиотек DLL инициализации приложений;

-e – отображение расширений проводника Windows;

-g – отображение гаджетов боковой панели Windows и рабочего стола;

-h – отображение Hijacks элементов;

-i – отображение дополнительных элементов браузера Internet Explorer;

-k – отображение известных библиотек DLL;

-l – отображение элементов, запускаемых автоматически при входе в систему;

-m – не отображать объекты с цифровой подписью Microsoft;

-n – отображение поставщиков протокола Winsock;

-o – отображение элементов кодеков;

-p – отображение драйверов монитора печати;

-r – отображение поставщиков безопасности LSA;

-s – отображение служб в режиме автоматического запуска и не отключенных драйверов;

-t – отображение элементов планировщика задач;

-v – проверка цифровых подписей;

-w – отображение элементов Winlogon;

-x – экспорт отображаемых данных в XML-файл;

User – отображение автоматически запускаемых объектов для указанной учетной записи пользователя.

Например, если вам нужно просмотреть только элементы, автоматически запускаемые при входе в систему, используйте утилиту с параметром –l, как показано ниже:

*
Увеличить рисунок

Заключение

В этой статье рассказывается о настройке элементов автоматически запускаемых приложений при загрузке и входе в операционную систему Windows. Вкратце описан процесс загрузки операционной системы Windows 7, а также рассмотрены методы работы и мониторинга автозапуска средствами системной утилиты «Конфигурация системы», изменение элементов автозапуска при помощи системного реестра, принципы работы с приложениями Autoruns и консольной версией Autoruns от Sysinternals. С помощью помещенной в статье информации, вы сможете грамотно настроить автозагрузки приложений своей операционной системы.


Ссылка: http://www.oszone.net/11517/autorun