Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: Авторам аддонов
Показать сообщение отдельно

Аватара для jameszero

Модератор


Moderator


Сообщения: 4915
Благодарности: 2577

Профиль | Сайт | Отправить PM | Цитировать


gora,

1. SizeApproximation не критичный и не обязательный параметр. Он отображает размер программы в "Установке компонентов Windows", а равен он значению в байтах (если открыть "Свойства" папки с программой, там увидите размер в килобайтах и байтах, вот последний и нужен)

2. Единица в секции [SourceDisksFiles] соответствует следующей секции [SourceDisksNames]
Код: Выделить весь код
[SourceDisksNames]
1="Дистрибутив Windows XP SP2 с интегрированным аддоном Punto Switcher",punto_sw.cab,,"I386"
Можно включить в аддон несколько cab файлов, тогда будет так
Код: Выделить весь код
[SourceDisksNames]
1="Описание первого каба",ехаmрle1.саb„"I386"
2="Описание второго каба",example2.cab„"I386"
и если, например, файл file1.exe находится в первом кабе, а file2.exe во втором, то секция [SourceDisksFiles] будет такая
Код: Выделить весь код
[SourceDisksFiles]
file1.exe=1
file2.exe=2
3. Значения запятых и флагов посмотрите здесь
Вкратце, между запятыми проставляются имена файла, в том случае, если имя конечного файла отличается от того, что в cab, т.е. в архиве файл example3.exe (формат 8.3) а в систему он должен скопироваться под именем example 333.exe. В таком случае будет так:
Код: Выделить весь код
"example 333.exe",example3.exe,,4
перед последней запятой ставится имя временного файла, на случай если файл уже существует и занят системой (т.е. будет заменён после перезагрузки), но это актуально только для win9x, NT системы сами генерируют имя временного файла

4. По поводу кавычек - они обязательны, если в имени файла или папки есть пробел или символы не английского алфавита, в остальных случаях они желательны, но не обязательны. В примере аддона я оставил кавычки там, где их проставил Скрипт для создания секций копирования/удаления файлов

5. Папки назначения для файлов задаются в секции [DestinationDirs]. К примеру, так можно скопировать file1.exe в Program Files\Folder, а file2.exe в System32
Код: Выделить весь код
[Install Section]
OptionDesc="Название программы"
Tip="Описание программы"
CopyFiles=file1.exe.Copy,file2.exe.Copy

[DestinationDirs]
file1.exe.Copy=16422,"Folder"
file2.exe.Copy=11

[SourceDisksNames]
1="Произвольное описание архива с файлами file1.exe и file2.exe",cab_name.cab,,"I386"

[SourceDisksFiles]
file1.exe=1
file2.exe=1

[file1.exe.Copy]
file1.exe,,,4

[file2.exe.Copy]
file2.exe,,,4
Если папка назначения не существует, она будет создана.

6. Запуск файла из inf можно осуществить так (на примере аддона DrWeb)

Код: Выделить весь код
[SpiderNT]
OptionDesc="DrWeb Spider Guard"
<skip>
Run=Spider.Run
<skip>

[Spider.Run]
Commandline="%16422%\DrWeb\spidernt.exe /install:auto /quiet"
TickCount=500
файл может быть любым исполняемым - exe, cmd..., так же можно запустить и функцию из dll-ки или секцию из inf-а (с помощью rundll32.exe)
Код: Выделить весь код
[Spider.Init]
Commandline="""%11%\rundll32.exe"" advpack,LaunchINFSection ""%17%\DrWeb.inf"",Spider.Reboot,4"
TickCount=500
7. Файл запускается из той директории, куда он скопирован директивой CopyFiles из cab-а аддона.

8. TickCount - затрудняюсь ответить.

Выберу свободное время - добавлю небольшой FAQ в мануал
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:17, 05-09-2007 | #184

Название темы: Авторам аддонов