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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Наборы обновлений для Windows XP/2003/Windows 7 » Инфо - Авторам аддонов

Ответить
Настройки темы
Инфо - Авторам аддонов


Moderator


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


Конфигурация

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


Изменения
Автор: Vadikan
Дата: 13-06-2009
Описание: ссылки



Полезные ссылки:

Скрипт для создания секций копирования/удаления файлов на inf
Руководство по работе с INF файлами
Работа с inf-файлами (EN)
Writing a Windows Installation Script (EN)
How to Write an INF (EN)

Rеg2Inf - конвертер от n7Epsilon
Конвертирование reg2inf, распаковка хотфиксов, работа с CAB архивами из контекстного меню
Пакетный файл для перепаковки CAB-архива с целью обновления версий файлов аддона
Компилятор аддонов New!
Цитата Vadikan:
Если ваш аддон представляет собой программу, пожалуйста, обязательно приводите в шапке помимо описания программы, ссылку на официальный сайт (домашнюю страницу) программы. Можно также сделать скриншот и опубликовать его (при большом размере файла это можно сделать в виде эскиза или ссылки).

Отправлено: 09:12, 05-02-2006

 

Аватара для gora

Ушёл из жизни


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

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


jameszero, продолжу свой FAQ
16 Какие существуют правила к написанию строк в файле Run? Пример:
Код: Выделить весь код
TCx7zSFXBtn.exe -ai -! "C:\Program Files\Total Commander"
Данная строка корректно работает при запуске указанного 7z SFX архива на "живой" системе и не срабатывает в аддоне при установке Windows (в файле svcpack.inf запись присутствует в неискаженном виде, проверил). Параметр "C:\Program Files\Total Commander" должен быть передан в исполняемую программу, но передается лишь его часть, а именно C:\Program . Какие правила я нарушил и как писать параметр с пробелами, в данном случае, в файле Run?

Отправлено: 11:49, 11-10-2007 | #201



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для jameszero

Модератор


Moderator


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

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


gora
Такие эксперименты я не проводил. Затрудняюсь ответить.

-------
RuntimePack официальный сайт
Политика ограниченного использования программ для всех редакций Windows
--
мои аддоны в облаке

Не было печали, апдейтов накачали.


Отправлено: 12:59, 11-10-2007 | #202


Аватара для Boa Soft

Компьютерный шаман


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

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


gora,

На сколько я помню, SVCPACK понимает только короткие имена. Попробуйте положить в svcpack
cmd и в нем уже выполнять команды.

-------
Человеческая лень - главная движущая сила технического прогресса.


Отправлено: 13:06, 11-10-2007 | #203


Аватара для gora

Ушёл из жизни


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

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


Boa Soft, Вы имеете ввиду длину имени TCx7zSFXBtn.exe ? Так я делал его и TCxBtn.exe и с тем же результатом. Хотя у меня есть пример длинного имени которое нормально обрабатывается: UltraISO.exe /VERYSILENT, UltraISOreg.exe)
А про cmd, попробую, но не очень это красиво получается, хотя, если не найду другого пути, то... Меня интересует вопрос: почему не_обрабатываются/не_правильно_обрабатываются кавычки? Они что, не учитываются в SVCPACK !?

Отправлено: 13:41, 11-10-2007 | #204


Аватара для jameszero

Модератор


Moderator


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

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


Вложения
Тип файла: 7z Miranda_nul.7z
(44.1 Kb, 32 просмотров)

Отвечаю на вопрос в теме c аддоном Miranda IM.
Есть ряд программ, которые для установки достаточно просто скопировать в нужную директорию, создать ярлыки, добавить записи в реестр (последнее опционально)
К таким программам относится и Miranda.
В аддоне я использовал следующий inf файл
Код: Выделить весь код
[Version]
Signature="$Windows NT$"
AdvancedINF=2.5

[Optional Components]
Uninst7

[Uninst7]
OptionDesc			=%PROG_NAME%
Modes				=0,1,2,3
AddReg			=PROG.AddReg
ProfileItems			=PROG.AddShortcut
Uninstall			=mUninst.Uninstall

[DefaultInstall]
OptionDesc			=%PROG_NAME%
Modes				=0,1,2,3
AddReg			=PROG.AddReg
ProfileItems			=PROG.AddShortcut
Uninstall			=mUninst.Uninstall

[Uninstall]
BeginPrompt			=BeginUnInsPrompt
RunPreSetupCommands	=Close.Prog:1
RunPostSetupCommands	=Dir.Delete
EndPrompt			=EndUnInsPrompt
DelReg			=PROG.DelReg
ProfileItems			=PROG.DelShortcut

[BeginUnInsPrompt] 
Title=Деинсталляция %PROG_NAME%
Prompt=Вы действительно хотите удалить %PROG_NAME% и все компоненты программы? 
ButtonType=YESNO

[Close.Prog] 
TASKKILL /F /IM %PROG_1% 
TSKILL %PROG_2%

[Dir.Delete] 
rundll32.exe advpack.dll,DelNodeRunDLL32 %16422%\%PROG_DIR%

[EndUnInsPrompt] 
Prompt=Программа %PROG_NAME% удалена.

[PROG.AddReg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%_addon","DisplayIcon",0,"%16422%\%PROG_DIR%\%PROG_1%"
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%_addon","DisplayName",,%PROG_NAME%"
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%_addon","DisplayVersion",,"v%PROG_VERS%"
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%_addon","Publisher",,"%PROG_MADE%"
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%_addon","URLInfoAbout",,"%PROG_URL%"
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%_addon","UninstallString",,"rundll32.exe advpack.dll,LaunchINFSection %17%\%PROG_INF%,Uninstall"

[PROG.DelReg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%_addon"

[PROG.AddShortcut]
Name		=%SRTC_NAME%
CmdLine	=16422,%PROG_DIR%,%PROG_1%
WorkingDir	=16422,%PROG_DIR%
SubDir		=%PROG_SDIR%
InfoTip		=%PROG_INFO%

[PROG.DelShortcut]
Name		=%SRTC_NAME%,0x00000002
SubDir		=%PROG_SDIR%

[Strings] 
PROG_DIR	="Miranda IM" 
PROG_NAME	="Miranda IM"
SRTC_NAME	="Miranda IM"
PROG_VERS	="0.7"
PROG_MADE	="oszone.net"
PROG_URL	="http://forum.oszone.net/forum-62.html"
PROG_INF	="Uninst7.inf"
PROG_1	=miranda32.exe
PROG_2	=miranda32
PROG_SDIR	=""
PROG_INFO	="Программа для общения по ICQ протоколу"
При редактировании только одной секции [String] и переименовании секции инсталляции, можно использовать этот inf для установки/удаления других аддонов. Аддоны должны быть комбинированные, т.е. сначала из sysoc срабатывает данный inf файл, а затем из SVCPACK запускается sfx архив, созданый любым доступным способом, при этом, sfx архив должен просто распаковать файлы в нужную директорию.
Создание ярлыков, внесение информации в реестр (в том числе о деинсталляции) реализовано в inf файле.

Деинсталляция перенесена из привычного для sysoc аддонов места "Установка компонентов Windows" в Установку и удаление программ"
При деинсталляции будет выдан запрос "Вы действительно хотите удалить такую то программу?",
Если программа в данный момент запущена, она будет выгружена из памяти, далее произойдёт удаление директории с программой, ярлыков, записей реестра.
По окончании деинсталляции будет сообщено "Программа такая то удалена"

Приведу пример inf-а для программы Test,
Директория установки - Program Files\Утилиты\Folder\Test
Ярлык - Пуск\Программы\Утилиты\Ярлык Test Program.lnk
Код: Выделить весь код
[Optional Components]
Uninst8

[Uninst8]
OptionDesc			=%PROG_NAME%
Modes				=0,1,2,3
AddReg			=PROG.AddReg
ProfileItems			=PROG.AddShortcut
Uninstall			=mUninst.Uninstall

<skip>

[Strings] 
PROG_DIR	="Утилиты\Folder\Test" 
PROG_NAME	="Test Program"
SRTC_NAME	="Ярлык Test Program"
PROG_VERS	="0.0.0.1"
PROG_MADE	="oszone.net"
PROG_URL	="http://forum.oszone.net/forum-62.html"
PROG_INF	="Uninst8.inf"
PROG_1	=test.exe
PROG_2	=test
PROG_SDIR	="Утилиты"
PROG_INFO	="Программа для примера работы inf файла"
Так же, в файлах txtsetup, dosnet, sysoc необходимо заменить все Uninst7 на Uninst8
И переименовать сам файл Uninst7.inf в Uninst8.inf.
Идея подсмотрена здесь
Пустышку аддона Miranda прикрепил к посту. В sfx архиве реализована защита от случайного запуска.
Если возникли вопросы, спрашивайте.

-------
RuntimePack официальный сайт
Политика ограниченного использования программ для всех редакций Windows
--
мои аддоны в облаке

Не было печали, апдейтов накачали.


Последний раз редактировалось jameszero, 17-10-2007 в 13:38.

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:04, 11-10-2007 | #205


Аватара для gora

Ушёл из жизни


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

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


Спасибо за разъяснения, но откликаясь на ваше предложение задавать вопросы, спрошу:
а)
Цитата jameszero:
переименовании секции инсталляции »
А что это за число которое там используется? Оно может быть любым или зависит от чего то? Может быть оно буквой или словом?
б)
Цитата jameszero:
sfx архив должен просто распаковать файлы в нужную директорию.
Создание ярлыков, внесение информации в реестр (в том числе о деинсталляции) реализовано в inf файле. »
Если я правильно понял, то в sfx архиве все таки МОЖНО делать ярлыки и записи в реестр, но НЕ нужно т.к. все они НЕ будут удалены при деинсталляции. Я прав?
в) Если sfx архив распакует некоторые файлы/папки не основную папку программы, то деинсталлятор не будет знать об этом и, соответственно, не удалит их, удалив при этом основную папку программы. Это так?
г) Создать ярлык можно только в Пуск\Программы\... или можно и на панель быстрого запуска, или и туда и туда одновременно?

Отправлено: 14:56, 11-10-2007 | #206


Аватара для jameszero

Модератор


Moderator


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

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


gora,
а) секции установки, как и имена файлов могут называться произвольно, цифры, буквы - не важно. Критично только переименовывать inf файл, чтобы имя не дублировалось от аддона к аддону, а название секции можно не менять. Я всего лишь для единообразия сделал название секции и имя inf-а совпадающими.

б) ярлыки и записи в реестр можно создавать и sfx архивом, просто тогда нужно будет предусмотреть их удаление из inf

в) можно предусмотреть удаление файлов, добавив DelFiles в inf, но тогда, как и в предыдущем случае, inf становится не универсальным. Сабж больше подходит для установки простейших программ, которых не мало.

г) можно создать и несколько ярлыков, просто придётся внести больше измений в inf
На рабочем соле, например, ярлык создастся, если присвоить переменной PROG_SDIR следуюшее значение
Код: Выделить весь код
PROG_SDIR	="..\..\Рабочий стол"
Как поместить ярлык в панель быстрого запуска, простого способа я не знаю.

Предложенный inf всего лишь шаблон и, конечно, его можно дополнять секциями удаления файлов, дерегистрации библиотек...
У меня ряд программ устанавливается из sfx архивов, а встраивать в каждый архив механизм деинсталляции трудоёмко и я сделал inf файл, который значительно облегчил задачу. Возможно, кто то ещё найдёт его полезным.

-------
RuntimePack официальный сайт
Политика ограниченного использования программ для всех редакций Windows
--
мои аддоны в облаке

Не было печали, апдейтов накачали.


Отправлено: 16:37, 11-10-2007 | #207


Аватара для Boa Soft

Компьютерный шаман


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

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


jameszero,
Цитата jameszero:
Предложенный inf всего лишь шаблон и, конечно, его можно дополнять секциями удаления файлов, дерегистрации библиотек...
У меня ряд программ устанавливается из sfx архивов, а встраивать в каждый архив механизм деинсталляции трудоёмко и я сделал inf файл, который значительно облегчил задачу. Возможно, кто то ещё найдёт его полезным. »

Для таких вещей Inno Setup очень даже рулит. Если потратить час - другой на разбор продукта, то потом можно клепать полноценные проффесионально сделанные инсталляторы за 10-20 минут!

http://www.jrsoftware.org

Бесплатное, инсталлятор можно сделать локализованным, ключик /VERYSILENT дает абсолютно тихую установку. На T12-T13 отрабатывает великолепно.

Если интересно - отвечу на вопросы (или дам для образца скрипты). Мне порой легче самому сделать инсталлятор, чем искать способ тихой установки чего-либо.

Отправлено: 01:57, 12-10-2007 | #208


Аватара для jameszero

Модератор


Moderator


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

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


Boa Soft
Inno Setup я использую, есть у меня и под него простейшие шабоны, наподобие этого, есть скрипты и посерьёзней. Просто, иной раз, при интеграции программы в 100Кб, упаковка в Inno Setup не целесообразна потому, что значительно увеличивает размер программы по сравнению с полезным.
К тому же, мне хотелось сделать аддон Miranda доступным для самостоятельного обновления (в виде конструктора)
Обновить sfx архив перетянув в него файлы, смогут практически все, а по Inno Setup нужно будет проводить ликбез.

-------
RuntimePack официальный сайт
Политика ограниченного использования программ для всех редакций Windows
--
мои аддоны в облаке

Не было печали, апдейтов накачали.


Отправлено: 08:43, 12-10-2007 | #209

vek vek вне форума

Аватара для vek

Старожил


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

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


Boa Soft,
А в InnoSetup есть функция чтобы абсолютно тихая установка была "по умолчанию" без ключика?

-------
Addon: RegShot


Отправлено: 10:18, 12-10-2007 | #210



Компьютерный форум OSzone.net » Автоматическая установка Windows » Наборы обновлений для Windows XP/2003/Windows 7 » Инфо - Авторам аддонов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Инфо - Авторам аддонов BootScreen prokazzza Оформление Windows XP 3 14-07-2009 14:58
Разное - переделка аддонов DREDivan Наборы обновлений для Windows XP/2003/Windows 7 7 08-01-2008 20:04
Разное - Скелеты аддонов Positiv Наборы обновлений для Windows XP/2003/Windows 7 5 12-10-2006 16:53
Инфо - Не сколько вопросов к авторам апдей пака и аддонов Sistemnik84 Наборы обновлений для Windows XP/2003/Windows 7 10 09-08-2006 12:01




 
Переход