У нас есть программное обеспечение, которое мы хотим запустить очень рано в процессе входа в систему. Программное обеспечение изменяет или скрывает некоторые элементы рабочего стола пользователя, и пользователь никогда не должен видеть неизмененный рабочий стол.
Теперь в Windows 7 запуск программного обеспечения через автозапуск работает нормально; программное обеспечение уже активно, когда отображается рабочий стол.
Однако в Windows 10 программное обеспечение запускается через несколько секунд после первоначального отображения рабочего стола, поэтому для наших целей это слишком поздно.
Есть ли способ запустить программу раньше или отложить запуск рабочего стола?
PS: Мы делаем встраиваемые машины типа киосков, поэтому мы действительно хотим это сделать.
решение1
Отэтот вопрос на stackoverflow, ваш лучший выбор — запустить программу как сервис. Один из вариантов — использоватьНССМ. Соответствующие части ответа:
Источник:Понимание процесса запуска — Учебник Windows 7
Обычная последовательность запуска Windows 7:
- Фаза самотестирования при включении питания (POST)
- Начальная фаза запуска
- Фаза диспетчера загрузки Windows
- Фаза загрузчика Windows
- Фаза загрузки ядра
- Фаза входа в систему
Фаза загрузки ядра Загрузчик Windows отвечает за загрузку ядра Windows (
Ntoskrnl.exe
) и HAL в память. Вместе ядро и HAL инициализируют группу программных функций, которые называются исполнительной системой Windows. Исполнительная система Windows обрабатывает информацию о конфигурации, хранящуюся в реестре, иHKLM\SYSTEM\CurrentControlSet
запускает службы и драйверы. В следующих разделах приводится более подробная информация о фазе загрузки ядра.Фаза входа в систему
Запускается подсистема Windows
Winlogon.exe
— системная служба, которая позволяет вам входить в систему и выходить из нее.Winlogon.exe
Затем она выполняет следующие действия:
- Запускает подсистему Services (
Services.exe
), также известную как SCM. SCM инициализирует службы, которые запись реестра Start обозначает как Autoload в подразделе реестраHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Servicename
.- Запускает процесс локального органа безопасности (LSA) (
Lsass.exe
).- Анализирует комбинацию клавиш Ctrl+ Alt+ Deleteв приглашении «Начать вход» (если компьютер является частью домена AD DS).
Функция пользовательского интерфейса входа в систему (LogonUI) и поставщик учетных данных (который может быть стандартным поставщиком учетных данных или сторонним поставщиком учетных данных) собирают имя пользователя и пароль (или другие учетные данные) и безопасно передают эту информацию в LSA для аутентификации. Если пользователь предоставил действительные учетные данные, доступ предоставляется с использованием протокола аутентификации Kerberos V 5 по умолчанию или Windows NT LAN Manager (NTLM).
Winlogon инициализирует функции безопасности и аутентификации, в то время как PnP инициализирует службы и драйверы автоматической загрузки. После входа пользователя в систему набор элементов управления, на который ссылается запись реестра
LastKnownGood
(расположенная вHKLM\SYSTEM\Select
), обновляется содержимым вCurrentControlSet
подразделе. По умолчанию затем запускается WinlogonUserinit.exe
и оболочка Windows Explorer. Затем Userinit может запустить другие процессы, включая:
- Параметры групповой политики вступают в силуВступают в силу параметры групповой политики, применяемые к пользователю и компьютеру.
Запуск программЕсли это не переопределено параметрами групповой политики, Windows запускает сценарии входа, программы автозагрузки и службы, указанные в следующих подразделах реестра и папках файловой системы:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Runonce HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows\Run HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce SystemDrive\Documents and Settings\All Users\Start Menu\Programs\Startup SystemDrive\Documents and Settings\username\Start Menu\Programs\Startup
Несколько приложений могут быть настроены на запуск по умолчанию после установки Windows, включая Windows Defender. Производители компьютеров или ИТ-отделы могут настроить другие приложения для запуска.
Запуск Windows не будет завершен, пока пользователь не войдет в систему. Если запуск не удается на этапе входа в систему, у вас проблема со службой или приложением, настроенным на автоматический запуск.