Программирование в системе Windows2000, страница 26

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

Программа инсталляции должна поддерживать пути доступа, в которых применяете универсальное соглашение об именовании (UNC — Universal Naming Convention). Kpoме того, имена путей доступа UNC должны использоваться для пиктограмм ярлыков установленных в меню Start.

Автоматическоевоспроизведение

Когда пользователь вставляет съемный носитель информации в устройство, способное вырабатывать сообщение о вставке носителя (CD-ROM, жесткий диск PCMCIA шина сменная плата оперативной памяти), и автоматически выполняется файл, находящий ся на сменном носителе, происходит так называемое автоматическое воспроизведение Это средство нашло широкое применение в программном обеспечении на CD-ROM i имеет простую реализацию. Для обеспечения автоматического воспроизведения в корневом каталоге съемного носителя должен быть размещен файл AUTORUN.INF.

По своей структуре файл AUTORUN.INF напоминает файл INI. Для определения выполняемого оператора применяется следующая форма:

[autorun]

open = filename

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

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

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

Пиктограмму для вставленного носителя можно определить, включив в файл AUTORUN.INF следующий оператор:

icon  =   filename

В качестве имени файла filename может быть указана пиктограмма (.ICO), растровое изображение (.BMP), выполняемая программа (.ЕХЕ) или динамически загружаемая библиотека (.DLL). Если файл содержит несколько пиктограмм, индекс пиктограммы должен быть указан номером после имени файла так же, как при регистрации пиктограмм для типа файла в системном реестре (описанной ранее в этой главе). Если необходимо указать абсолютный путь path доступа к файлу пиктограммы, для определения пиктограммы применяется следующая форма:

defaulticon   =   path

Система автоматически предоставляет всплывающее меню с командой AutoPlay в качестве значения по умолчанию. Для введения во всплывающее меню дополнительных команд может применяться следующая форма:

shell\verb\command  =   filename shell\verb  =   Menu   Item Name

Например, ниже показано, как ввести в меню пункт Read Me First: shell\readme\command  =  notepad.exe   readrae.txt shell\verb  =  Read  SMe   First

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

shell  =   verb