Для примера я выбрал программу Netlook. Причина заключается в желании совместить приятное с полезным - такого аддона еще нет, программка не очень большая, записей в реестр не делает (то есть практически переносная), и лично мне пригодится. Сознательно не использовались средства автоматизации создания аддона (смотрите во втором примере), чтобы пример был более наглядным. Аддон можно скачать здесь и подробно изучить.
Этап один.
После изучения структуры самой программки, я скопировал ее в отдельную папку для экспериментов и распотрошил, извлек все файлы в одну папку. Их оказалось 32 штуки. Наступило время создать собственно INF-файл. Сначала создаем заголовок.
[Version]
Signature = "$WINDOWS NT$"
SetupClass = BASE
$WINDOWS NT$ стоит использовать вместо $CHICAGO$, мы же не делаем аддон для win95? Кроме указания на базовый класс установки больше в заголовке ничего не пишем, пока и не нужно. Затем создаем самую главную секцию нашего INF-файла - исполняемую:
[DefaultInstall]
CopyFiles = CopyMain, CopyConfig, CopyHelp, CopyHist, CopyLang, CopySkin, CopySound, CopyTools, CopyInf, RenToolsLang
ProfileItems = NL.AddShortcut
Эта секция не обязательно должна иметь такое скучное имя, но поверьте от того, что она есть вам хуже не будет.
Разбираем по строчкам: CopyFiles копирует файлы, попутно создавая нужные папки, ProfileItems добавляет ярлык программы. В моем случае (хороший стиль написания INF-файла) я воспользовался уже кем-то созданной папкой по адресу Пуск\Все программы\Утилиты. На первый взгляд все выглядит просто. Но, для того чтобы создать секции копирования, которые так красиво смотрятся в строке CopyFiles=, придется попотеть- создать все эти секции с перечислением файлов вручную. Вам никто не мешает проявить смекалку и, используя специальные утилитки, получить на руки в текстовом виде список файлов из папки куда вы их "распотрошили". Секции я поименовал в соответствии с названием папок аддона Copymain - корневая и т. д. Далее прописываем будущую структуру папок в секции [DestinationDirs].