|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Наборы обновлений для Windows XP/2003/Windows 7 » Инфо - Авторам аддонов |
|
Инфо - Авторам аддонов
|
Сообщения: 53479 |
Профиль | Отправить PM | Цитировать
Открыта общественная группа "Авторы проектов"! Новый функционал форума для Авторов аддонов Руководство по созданию аддонов O_o Обсуждение руководства Полезные ссылки: Скрипт для создания секций копирования/удаления файлов на 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 |
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать jameszero, продолжу свой FAQ
16 Какие существуют правила к написанию строк в файле Run? Пример: Данная строка корректно работает при запуске указанного 7z SFX архива на "живой" системе и не срабатывает в аддоне при установке Windows (в файле svcpack.inf запись присутствует в неискаженном виде, проверил). Параметр "C:\Program Files\Total Commander" должен быть передан в исполняемую программу, но передается лишь его часть, а именно C:\Program . Какие правила я нарушил и как писать параметр с пробелами, в данном случае, в файле Run? |
Отправлено: 11:49, 11-10-2007 | #201 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Модератор Сообщения: 4920
|
Профиль | Сайт | Отправить PM | Цитировать gora
Такие эксперименты я не проводил. Затрудняюсь ответить. |
------- Не было печали, апдейтов накачали.
Отправлено: 12:59, 11-10-2007 | #202 |
Компьютерный шаман Сообщения: 2910
|
Профиль | Сайт | Отправить PM | Цитировать gora,
На сколько я помню, SVCPACK понимает только короткие имена. Попробуйте положить в svcpack cmd и в нем уже выполнять команды. |
------- Отправлено: 13:06, 11-10-2007 | #203 |
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать Boa Soft, Вы имеете ввиду длину имени TCx7zSFXBtn.exe ? Так я делал его и TCxBtn.exe и с тем же результатом. Хотя у меня есть пример длинного имени которое нормально обрабатывается: UltraISO.exe /VERYSILENT, UltraISOreg.exe)
А про cmd, попробую, но не очень это красиво получается, хотя, если не найду другого пути, то... Меня интересует вопрос: почему не_обрабатываются/не_правильно_обрабатываются кавычки? Они что, не учитываются в SVCPACK !? |
Отправлено: 13:41, 11-10-2007 | #204 |
Модератор Сообщения: 4920
|
Профиль | Сайт | Отправить PM | Цитировать Отвечаю на вопрос в теме 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 протоколу" Создание ярлыков, внесение информации в реестр (в том числе о деинсталляции) реализовано в 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 файла"
И переименовать сам файл Uninst7.inf в Uninst8.inf. Идея подсмотрена здесь Пустышку аддона Miranda прикрепил к посту. В sfx архиве реализована защита от случайного запуска. Если возникли вопросы, спрашивайте. |
------- Не было печали, апдейтов накачали.
Последний раз редактировалось jameszero, 17-10-2007 в 13:38. Отправлено: 14:04, 11-10-2007 | #205 |
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать Спасибо за разъяснения, но откликаясь на ваше предложение задавать вопросы, спрошу:
а) Цитата jameszero:
б) Цитата jameszero:
в) Если sfx архив распакует некоторые файлы/папки не основную папку программы, то деинсталлятор не будет знать об этом и, соответственно, не удалит их, удалив при этом основную папку программы. Это так? г) Создать ярлык можно только в Пуск\Программы\... или можно и на панель быстрого запуска, или и туда и туда одновременно? |
||
Отправлено: 14:56, 11-10-2007 | #206 |
Модератор Сообщения: 4920
|
Профиль | Сайт | Отправить PM | Цитировать gora,
а) секции установки, как и имена файлов могут называться произвольно, цифры, буквы - не важно. Критично только переименовывать inf файл, чтобы имя не дублировалось от аддона к аддону, а название секции можно не менять. Я всего лишь для единообразия сделал название секции и имя inf-а совпадающими. б) ярлыки и записи в реестр можно создавать и sfx архивом, просто тогда нужно будет предусмотреть их удаление из inf в) можно предусмотреть удаление файлов, добавив DelFiles в inf, но тогда, как и в предыдущем случае, inf становится не универсальным. Сабж больше подходит для установки простейших программ, которых не мало. г) можно создать и несколько ярлыков, просто придётся внести больше измений в inf На рабочем соле, например, ярлык создастся, если присвоить переменной PROG_SDIR следуюшее значение Как поместить ярлык в панель быстрого запуска, простого способа я не знаю. Предложенный inf всего лишь шаблон и, конечно, его можно дополнять секциями удаления файлов, дерегистрации библиотек... У меня ряд программ устанавливается из sfx архивов, а встраивать в каждый архив механизм деинсталляции трудоёмко и я сделал inf файл, который значительно облегчил задачу. Возможно, кто то ещё найдёт его полезным. |
------- Не было печали, апдейтов накачали.
Отправлено: 16:37, 11-10-2007 | #207 |
Компьютерный шаман Сообщения: 2910
|
Профиль | Сайт | Отправить PM | Цитировать jameszero,
Цитата jameszero:
Для таких вещей Inno Setup очень даже рулит. Если потратить час - другой на разбор продукта, то потом можно клепать полноценные проффесионально сделанные инсталляторы за 10-20 минут! http://www.jrsoftware.org Бесплатное, инсталлятор можно сделать локализованным, ключик /VERYSILENT дает абсолютно тихую установку. На T12-T13 отрабатывает великолепно. Если интересно - отвечу на вопросы (или дам для образца скрипты). Мне порой легче самому сделать инсталлятор, чем искать способ тихой установки чего-либо. |
|
Отправлено: 01:57, 12-10-2007 | #208 |
Модератор Сообщения: 4920
|
Профиль | Сайт | Отправить PM | Цитировать Boa Soft
Inno Setup я использую, есть у меня и под него простейшие шабоны, наподобие этого, есть скрипты и посерьёзней. Просто, иной раз, при интеграции программы в 100Кб, упаковка в Inno Setup не целесообразна потому, что значительно увеличивает размер программы по сравнению с полезным. К тому же, мне хотелось сделать аддон Miranda доступным для самостоятельного обновления (в виде конструктора) Обновить sfx архив перетянув в него файлы, смогут практически все, а по Inno Setup нужно будет проводить ликбез. |
------- Не было печали, апдейтов накачали.
Отправлено: 08:43, 12-10-2007 | #209 |
Старожил Сообщения: 400
|
Профиль | Сайт | Отправить PM | Цитировать Boa Soft,
А в InnoSetup есть функция чтобы абсолютно тихая установка была "по умолчанию" без ключика? |
------- Отправлено: 10:18, 12-10-2007 | #210 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Инфо - Авторам аддонов 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 |
|