Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

Методы автозапуска программ в среде Windows '95, '98 и Windows Millenium.

div.main {margin-left: 20pt; margin-right: 20pt}Методы автозапуска программ в среде Windows '95, '98 и Windows Millenium.

Автор: Дмитрий Крупорницкий

 

Очень часто в форумах по компьютерной тематике можно увидеть вопросы, типа: "Как запустить программу при загрузке Windows?", или же "Каким способом лучше запускать программу?", и т.д. В данной статье я решил рассмотреть способы, которыми можно запустить программу в среде Windows. Я намеренно не включил сюда такие "экзотические" способы, как дописывание ещё одного блока в PE-файл, или же запуск программы из загрузочного сектора.

 

Способ первый: самый простой и до боли знакомый со среды DOS – файл AUTOEXEC.BAT в корневом каталоге загрузочного диска. Все программы, которые вы хотите запустить из него, должны выполняться в реальном режиме DOS, так как выполнение этого командного файла происходит до загрузки графической оболочки.

 

Файл AUTOEXEC.BAT – простой текстовой файл. Каждая строка (если она не пустая) представляет собой команду среды DOS.

Есть несколько форматов запуска исполняемых файлов, но остановимся на нескольких:

[путь]файл.рас – запуск программы с выдачей строки запуска и на экран и выводом сообщений программы на стандартное устройство вывода (экран);

@[путь]файл.рас – запуск программы без выдачи строки запуска программы и выводом сообщений программы на экран;

@[путь]файл.рас > nul – запуск программы в "тихом" режиме (без вывода строки запуска и данных программы).

 

Способ второй: папка автозагрузки. Всё, что кладётся в папку "Автозагрузка", будет выполнено при запуске Windows. В неё могут находится программы и DOS и Windows форматов. К данной папке можно получить доступ и через реестр Windows по следующему пути: HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerShell Folders;

Ключ: Startup="ПУТЬ_К_ПАПКЕ_АВТОЗАГРУЗКИ"

 

Способ третий: файл конфигурации системы WIN.INI. Если в разделе [windows] создать (или дописать) ключ load=файл.exe или run= файл.exe, то он будет запущен при старте Windows.

Дописывать в этот файл информацию нужно при помощи функции WritePrivateProfileStringA, описание которой вы можете найти в MSDN.

Сюда же можно отнести и запуск программы из файла SYSTEM.INI. К нему применимы всё вышесказанное, только дописывать надо в раздел [boot], а ключ:

shell=explorer.exe ВАШ_ФАЙЛ_ЗАПУСКА. Данный ключ описывает среду для работы в Windows, и EXPLORER.EXE при инициализации запускает вашу прогрмму.

 

Способ четвёртый: файл WINSTART.BAT. Он представляет собой обычный BAT (командный) файл и чаще всего используется для удаления следов программ инстоляции или деинстоляции. Он находится в каталоге установки Windows и в отличии от AUTOEXEC.BAT в него могут входить программы для 32 разрядного режима (Windows формата).

 

Способ пятый: самый известный людям, которые хоть раз занимались поиском троянов, вирусов да и просто назойливых программ.

В реестре есть ряд ключей, в которых если прописать имя программы, то она будет выполнена при старте Windows. Ключи эти следующие:

[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices]

[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun]

[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun]

[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunServices]

Разница между RunServices и просто Run состоит в том, что при запуске программы в ключе RunServices она будет запущена как обслуживающий процесс и ей будет выделено меньше приоритетного процессорного времени при работе. При запуске же в ключе Run, программа запуститься как обычно с нормальным приоритетом.

Имя ключа, содержащего путь и имя программы, может быть любым. Параметр должен быть строковым (REG_SZ].

 

Если к примеру вам требуется запустить программу только один раз, то можете поместить её в следующие ключи реестра:

[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServicesOnce]

[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnce]

[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce]

Разница между ними и вышесказанным состоит лишь в том, что данные ключи будут очищены после успешной загрузки системы автоматически, и вам не придётся делать это программным способом. Программа получит управление лишь один раз.

 

Способ шестой: файл WININIT.INI. Самый "загадочный" способ запуска. Все дело в том, что этот файл используется программами установки для удаления своих временных файлов. Если файл существует в каталоге установки Windows, то он выполняется а затем удаляется автоматически. Файл предназначен только для удаления файлов, и очень хорош, если вы хотите кому-то "насолить" J .

Просто создайте файл следующего содержания:

[RENAME]

NUL=C:COMMAND.COM

 

Эта команда отправит файл COMMAND.COM на нулевое устройство, ну или просто удалит его.

 

Способ седьмой: привязка программы к определённому формату файлов Windows. Часто употребляется для вирусописательства :).

 

[HKEY_CLASSES_ROOTexefileshellopencommand] Ключ: @=""%1" %*"

[HKEY_CLASSES_ROOTcomfileshellopencommand] Ключ: @=""%1" %*"

[HKEY_CLASSES_ROOTbatfileshellopencommand] Ключ: @=""%1" %*"

[HKEY_CLASSES_ROOThtafileShellOpenCommand] Ключ: @=""%1" %*"

[HKEY_CLASSES_ROOTpiffileshellopencommand] Ключ: @=""%1" %*" [HKEY_LOCAL_MACHINESoftwareCLASSESbatfileshellopencommand] Ключ: @=""%1" %*" [HKEY_LOCAL_MACHINESoftwareCLASSEScomfileshellopencommand] Ключ: @=""%1" %*" [HKEY_LOCAL_MACHINESoftwareCLASSESexefileshellopencommand] Ключ: @=""%1" %*" [HKEY_LOCAL_MACHINESoftwareCLASSEShtafileShellOpenCommand] Ключ: @=""%1" %*" [HKEY_LOCAL_MACHINESoftwareCLASSESpiffileshellopencommand] Ключ: @=""%1" %*"

Ключ обычно должен иметь значение "%1 %*". Однако, если это значение поменять на "c:viewer.exe %1 %*", то программа VIEWER.EXE будет ВСЕГДА выполняться при запуске программ типа exe/com/bat/hta/pif.

Способ восьмой: использование файла DOSSTART.BAT. Данный файл – простой командный файл, который выполняется, когда пользователь хочет поработать в среде DOS (с выгрузкой графической оболочки). Чаще всего используется для драйверов мыши, экрана, и т.д.

Ну вот в принципе и всё. Конечно, можно найти ещё много разных способов запуска программ, но это – основные.

Если вы знаете ещё какой-нибудь способ, напишите мне: mailto:diam@softhome.net

 

Дмитрий Крупорницкий



  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2024
    Реклама на сайте