Поделиться через


Создание приложения с поддержкой автозапуска

Создание приложения с поддержкой автозапуска является простой процедурой. В этом разделе в качестве примера используется cd-ROM (это первый носитель для реализации этой технологии), но сегодня существует множество различных типов носителей, которые могут его использовать.

Чтобы включить автозапуск в приложении, необходимо просто включить два основных файла:

  • Файл Autorun.inf
  • Запускающее приложение

Когда пользователь вставляет диск в диск CD-ROM на компьютере, совместимом с автозапуском, система немедленно проверяет, имеет ли диск личную файловую систему компьютера. Если это так, система выполняет поиск файла с именем Autorun.inf. Этот файл задает приложение установки, которое будет выполняться вместе с различными необязательными параметрами. Приложение запуска обычно устанавливает, удаляет, настраивает и, возможно, запускает приложение.

Создание файла Autorun.inf

Autorun.inf — это текстовый файл, расположенный в корневом каталоге компакт-диска, который содержит приложение. Ее основная функция — предоставить системе имя и расположение программы запуска приложения, которая будет выполняться при вставке диска.

Примечание.

Файлы Autorun.inf не поддерживаются в Windows XP для дисков, возвращающих DRIVE_REMOVABLE из GetDriveType.

 

Файл Autorun.inf также может содержать необязательные сведения, включая:

  • Имя файла, содержащего значок, который будет представлять компакт-диск приложения. Этот значок будет отображаться в проводнике Windows вместо значка стандартного диска.
  • Дополнительные команды контекстного меню, отображаемого при щелчке правой кнопкой мыши значка CD-ROM. Можно также указать команду по умолчанию, которая выполняется при двойном щелчке значка пользователем.

Файлы Autorun.inf похожи на файлы .ini. Они состоят из одного или нескольких разделов, каждый из которых возглавляется именем, заключенным в квадратные скобки. Каждый раздел содержит ряд команд, которые будут выполняться оболочкой при вставке диска. В настоящее время для файлов Autorun.inf определены два раздела.

  • Раздел [autorun] содержит команды автозапуска по умолчанию. Все файлы Autorun.inf должны иметь раздел [autorun] .
  • Необязательный раздел [autorun.alpha] можно включить для систем, работающих на компьютерах на основе RISC. Когда диск вставляется в диск CD-ROM в системе на основе RISC, оболочка будет выполнять команды в этом разделе, а не в разделе [автозапуск] .

Примечание.

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

 

Каждый раздел содержит ряд команд, определяющих, как выполняется операция автозапуска. Доступно пять команд.

Команда Description
defaulticon Указывает значок по умолчанию для приложения.
значок Указывает путь и имя файла значка конкретного приложения для диска CD-ROM.
open Указывает путь и имя файла запускаемого приложения.
useautorun Указывает, что функции автозапуска версии 2 должны использоваться при поддержке.
оболочка Определяет команду по умолчанию в контекстном меню CD-ROM.
shell_verb Добавляет команды в контекстное меню CD-ROM.

 

Ниже приведен пример простого файла Autorun.inf. Он указывает Filename.exe в качестве запускаемого приложения. Второй значок в Filename.exe будет представлять диск CD-ROM вместо значка стандартного диска.

[autorun] 
open=Filename.exe 
icon=Filename.exe,1

Этот пример Autorun.inf запускает различные приложения запуска в зависимости от типа компьютера.

[autorun] 
open=Filename_x86.exe 
icon=IconFile.ico 

[autorun.alpha] 
open=Filename_RISC.exe 
icon=IconFile.ico

Раздел [DeviceInstall]

Вы можете использовать раздел [DeviceInstall] на любом съемных носителях. Она поддерживается только в Windows XP. С помощью DriverPath можно указать путь к каталогу, в котором Windows XP ищет файлы драйверов, что предотвращает длительный поиск по всему содержимому.

Вы используете раздел [DeviceInstall] с установкой драйвера, чтобы указать каталоги, в которых Windows XP должен искать носитель для файлов драйверов. В Windows XP весь носитель больше не выполняется поиск по умолчанию, поэтому для указания расположений поиска требуется [DeviceInstall] . Ниже приведены только съемные носители, которые Windows XP полностью выполняет поиск без раздела [DeviceInstall] в файле Autorun.inf.

  • Диски Floppy, найденные на дисках A или B.
  • Диск CD/DVD меньше размера 1 гигабайт (ГБ).

Все остальные носители должны включать раздел [DeviceInstall] для Windows XP для обнаружения драйверов, хранящихся на этом носителе.

Примечание.

Как и в разделе [AutoRun], раздел [DeviceInstall] может быть архитектурой.

 

Реализация приложений автозапуска

Написание приложения установки устройства