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

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

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


Moderator


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


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

Профиль | Отправить 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

 

Аватара для volk1234

Старовер


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

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


кто нить помогите разобратся с uninstall
вот делал аддон - пример для инструкции
все замечательно устанавливается,
но не анинсталится.

Вернее совсем не понятно расхождение, описанного в учебнике по Inf и структура готовых аддонов.
как добавить аддон в список удаления программ понятно, но непонятны следующие вещи:
1. Почему недостаточно просто использовать DelDir? Зачем удалять файлы по одному, а затем удалять директории?
2. Строка HKLM,Software\Microsoft\Windows\CurrentVersion\Uninstall\MYProgram,"UninstallString",,"rundll32.exe advpack,LaunchINFSectionEx %17%\MY.inf,Uninstall,,64,A" обязательно должна иметь
параметр Uninstal? или допускается любое имя секции?
3. В некоторых аддонах есть другое присвоение Uninstall=SectionName, это я так понимаю больше для встроенных в программу анинсталяторов?
4. Даже если и необходимо сначало удалять файлы поименно, зачем создавать отдельные секции удаления для всех фалов, дублирующие секции копирования?
5. И естественно, почему не работает мой инф, я его уже искромсал, оставил одно удаление файлов, но они не удаляются

-------

Ю-ху!


Последний раз редактировалось volk1234, 24-02-2009 в 01:38.


Отправлено: 21:14, 09-03-2008 | #361



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

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


Аватара для Drinko

Советник


Moderator


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

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


volk1234,
А почему Вы не используете:
Код: Выделить весь код
[Uninstall]
BeginPrompt		=BeginUnInsPrompt
RunPreSetupCommands	=Close.Prog:1
RunPostSetupCommands	=Dir.Delete
EndPrompt		=EndUnInsPrompt

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

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

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

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

[Strings]
PROG_NAME	="Program_Name"
PROG_DIR	="Program_Name" 
PROG_1		=Program_Name.exe

-------
Форум Цифровое изображение | Windows 8.1 | Windows 10
-------
Во имя ALTа, CTRLа и святого DELETE
Enter


Последний раз редактировалось Drinko, 10-03-2008 в 03:08. Причина: орфография

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

Отправлено: 03:01, 10-03-2008 | #362


Аватара для volk1234

Старовер


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

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


Drinko
Спасибо за отклик.
Я видел этот шаблон от jameszero.

Вообще, насчитал как минимум 3 способа uninstal через inf:

1. Который указали вы, через advpack.dll,DelNodeRunDLL32

2. Который пытаюсь отработать я через advpack,LaunchINFSectionEx %17%\program.inf,Uninstall,,64,A"
даже без deldir

3.uninstal=sectionname,
[sectionname]
uninstal.exe
без учета удаления ялыков,записей реестра и удаления используемых папок.

Просто в учебнике по Inf который указан в шапке используется именно этот(2й в моем списке) способ
Я исходил из того, что новый человек, как и я сначала захочет сделать все по инструкции, а потом начнет потрошить
аддоны и искать более сложные примеры. Я даже strings не хотел использовать, однако в процессе экспериментов решил
польностью продублировать как в учебнике по inf. Что интересно в процессе экспериментов я пытался запустиь эту строку
без инфа черз rundll32, и в итоге удаления или прибавления кавычек или запятых удаление отработала из моего инфа
К сожалению повторить сей результат я не смог

-------

Ю-ху!


Последний раз редактировалось volk1234, 11-03-2008 в 11:27.


Отправлено: 10:51, 10-03-2008 | #363


Аватара для greg_b

Ветеран


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

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


volk1234,
1 - DelDir - применять лучше для самих каталогов, при копировании и удалении файлов лучше испольщовать разные секции, т.к. иногда используется переименование файлов из формата 8.3 в LFN, обход защиты от записи файлов.
2 - в inf-файле должна быть полноценная секция uninstall
3 - необязательно - можешь сгенерить ссылку на свой uninstall.bat файл
4 - см п. 1
5 - неверное описание секции uninstall. Посмотри для примера кусок файла mplayerc.inf:
Код: Выделить весь код
[mplayerc.Uninstall]  
PreInstallCommand = UnRunCmd  
DelFiles=mplayerc.Del,mplayerc.lang.del, mplayerc.data.del  
Run=mplayerc.AdvInfCall  
ProfileItems=mplayerc.DelItems1,mplayerc.DelItems2  
RunPreSetupCommand = UnRunCmd    

[mplayerc.AdvInfCall]
 Commandline="""%11%\rundll32.exe"" advpack,LaunchINFSection ""%17%\mplayerc.inf"",mplayerc.Uninstal.DelDirs,4"  TickCount=500    

[mplayerc.Uninstal.DelDirs]  
DelDirs=mplayerc.DelDirs  

[UnRunCmd]
%16422%\MPlayer Classic\mplayerc.exe /unregvid

[mplayerc.DelDirs]
"%16422%\MPlayer Classic"

[Strings]
RunOnceKey	="SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce"

-------
Опыт — это слово, которым люди называют свои ошибки. P.S. "Полезное сообщение" не пишется, а нажимается.
Мои аддоны


Последний раз редактировалось Vadikan, 10-03-2008 в 18:31. Причина: перенос строки

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

Отправлено: 16:50, 10-03-2008 | #364


Аватара для volk1234

Старовер


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

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


greg_b спасибо за ответ.

Цитата greg_b:
2 - в inf-файле должна быть полноценная секция uninstall »
так и не понял,
вопрос был
Цитата volk1234:
2. Строка HKLM,Software\Microsoft\Windows\CurrentVersion\Uninstall\MYProgram,"UninstallString",,"rundll32.exe advpack,LaunchINFSectionEx %17%\MY.inf,Uninstall,,64,A" обязательно должна иметь параметр Uninstal? или допускается любое имя секции? »
и что за цифра 64 и буква А в учебнике по INF ?

Просто первое на что я подумал, эта строка. Возможно неправильно указанны папраметры uninstall string.

В вашем примере, так и непонял, используется ли в исполняемой секции следующая запись: Uninstall = mplayerc.Uninstall

-------

Ю-ху!


Отправлено: 20:04, 10-03-2008 | #365


Аватара для greg_b

Ветеран


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

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


volk1234,
1 - речь о полноценной секции [UNINSTALL], с набором всех комманд по очистке от установки
2 - помоему строка у вас сударь неверная, надо как-то вот так:
%11%\rundll32.exe advpack,LaunchINFSection %17%\myprg.inf,Uninstall,4 -
кстати проверь результат записи в реестр, возможно надо настравить кавычек.

-------
Опыт — это слово, которым люди называют свои ошибки. P.S. "Полезное сообщение" не пишется, а нажимается.
Мои аддоны


Последний раз редактировалось greg_b, 10-03-2008 в 21:22.


Отправлено: 20:59, 10-03-2008 | #366


Аватара для volk1234

Старовер


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

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


Цитата greg_b:
речь о полноценной секции [UNINSTALL] »
Сделал отдельные секции для удаления, файлы удалились замечательно.
Возникла проблема №2 не удаляются папки
привожу код. Подозрения на кавычки в вызове advpack, но перепробЫвал все варианты кавычек и слэшей в переменных...
Код: Выделить весь код
[NL.Uninstall]
DelFiles=DelCopyMain, DelCopyConfig, DelCopyHelp, DelCopyHist, DelCopyLang, DelCopySkin, DelCopySound, DelCopyTools, DelCopyInf, DelRenToolsLang
DelReg=Dreg
Run=NL.AdinfCall

[NL.AdinfCall]
Commandline="""%11%\rundll32.exe"" advpack,LaunchINFSection ""%17%\netlook.inf"",NL.DD,4"
TickCount=500

[NL.DD]
DelDirs=dirs

[dirs]
%16422%\Netlook

[Dreg]
HKLM,"%Key%"

[strings]
Key="Software\Microsoft\Windows\CurrentVersion\Uninstall\Netlook"

-------

Ю-ху!


Отправлено: 22:39, 10-03-2008 | #367


Аватара для Drinko

Советник


Moderator


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

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


Цитата volk1234:
Commandline="""%11%\rundll32.exe"" advpack,LaunchINFSection ""%17%\netlook.inf"",NL.DD,4" »
вроде так:
Commandline=""%11%\rundll32.exe" advpack.dll,LaunchINFSection \ "%17%\netlook.inf",NL.DD,4""

-------
Форум Цифровое изображение | Windows 8.1 | Windows 10
-------
Во имя ALTа, CTRLа и святого DELETE
Enter


Отправлено: 23:02, 10-03-2008 | #368


Аватара для volk1234

Старовер


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

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


Цитата Drinko:
Commandline="%11%\rundll32.exe" advpack,LaunchINFSection "%17%\netlook.inf",NL.DD,4" »
куда кавычку подевали?
пробовал в 4 вариантах непомогает
без кавычек с одними кавычками и с двумя кавычками...
Код: Выделить весь код
%11%\rundll32.exe advpack,LaunchINFSection %17%\netlook.inf,NL.DD,4
"""%11%\rundll32.exe"" advpack,LaunchINFSection ""%17%\netlook.inf"",NL.DD,4"
""%11%\rundll32.exe" advpack,LaunchINFSection "%17%\netlook.inf",NL.DD,4"
прям заколдованный какойто аддон. Папки как влитые сидят. Нашел в одном аддоне вариант
с cmd /c rd /s /q спецом убрал ключи скрывающие окошко. Походу недоходит до выполнения даже этой команды(cmd не появляется),
однако файлы и данные из реестра удаляет....

-------

Ю-ху!


Отправлено: 23:16, 10-03-2008 | #369


Аватара для Drinko

Советник


Moderator


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

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


volk1234,
не advpack, а advpack.dll

-------
Форум Цифровое изображение | Windows 8.1 | Windows 10
-------
Во имя ALTа, CTRLа и святого DELETE
Enter


Отправлено: 23:23, 10-03-2008 | #370



Компьютерный форум 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




 
Переход