PDA

Показать полную графическую версию : Авторам аддонов


Страниц : 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

XXXler
05-06-2006, 18:16
Очередное исправление глюков:


Reg2Inf (http://forum.oszone.net/post-446091-60.html)

04.06.2006
Исправлено:

-обработка значений по умолчанию REG_SZ
-конвертирование путей и переменных в DirId Inf только в значениях параметров
-обработка отличных от REG_BINARY двоичных параметров

05.06.2006
Исправлено:
-обработка пустых значений REG_BINARY, REG_MULTI_SZ, REG_EXPAND_SZ,REG_SZ
-обработка многострочных комментариев

SetupMaker (http://forum.oszone.net/post-434018-30.html)

05.06.2006
-исправлено: формирование секции DelDirs
-исправлено: формирование первых значений секции DestinationDirs
-добавлено: при совпадении имен исходного и конечного файла, в строку копирования вносится только имя конечного

В добавок ко всему: при наличии в строках точек_с_запятыми возможен неправильный перенос строки (следующая строка может стать закомментированной, исправлять пока нет времени, так что будьте бдительны :) )

Shido
06-06-2006, 10:13
XXXler

Планируеш ли объеденить обе утилиты?

Можно ли реализовать в Reg2Inf разделение информации на секции по принципу расположения в реестре (что-то вроде):

%NAME%.HKCU.REG
%NAME%.HKLM.REG
%NAME%.HKCR.REG

И добавить возможность опционально формировать секцию %NAME%.PERUSER.REG в SetupMaker. С таким содержимым:

[%NAME%.PERUSER.REG]
HKLM,"%KEY%\%PROGRAM_GUID%",,,"%INSTALLNAME%"
HKLM,"%KEY%\%PROGRAM_GUID%","ComponentID",,"%INSTALLNAME%"
HKLM,"%KEY%\%PROGRAM_GUID%","DontAsk",0x00010001,2
HKLM,"%KEY%\%PROGRAM_GUID%","Locale",,"%LANGUAGE%"
HKLM,"%KEY%\%PROGRAM_GUID%","StubPath",,"rundll32.exe advpack.dll,LaunchINFSection %17%\%NAME%.inf,PerUserStub"
HKLM,"%KEY%\%PROGRAM_GUID%","IsInstalled",0x00010001,1

[PerUserStub]
AddReg=%NAME%.HKCU.REG

[Strings]
KEY = "SOFTWARE\Microsoft\Active Setup\Installed Components"
INSTALLNAME= "имя программы"
PROGRAM_GUID= "сгенерированный GUID"
LANGUAGE= "RU"

Это позволяет вносить изменения в реестр для каждого пользователя. Секцию PerUserInstall заставить работать у меня не получается - этот вариант кажется более надёжным.

XXXler
06-06-2006, 10:57
Планируеш ли объеденить обе утилиты?
может, со временем, когда наступлю на все грабли *.inf и *.reg
Можно ли реализовать в Reg2Inf разделение информации на секции по принципу расположения в реестре (что-то вроде):
%NAME%.HKCU.REG %NAME%.HKLM.REG %NAME%.HKCR.REG

ну ты прям читаешь мои мысли :) , реализую, только опять-же со временем.

Вообще оба скрипта на Автоите, исходники во вложении (правда пока они в ужастно корявом состоянии) при желании можно подправить и получить то, что требовалось

SAOPP
06-06-2006, 11:46
Есть такое предложение авторам аддонов, как реализация и поставка вместе с аддоном своеобразного "деинсталлятора", который будет убивать все cab-архивы, которые относятся к аддону + чистить строки в соответствующих файлах где есть ссылки на данные архивы, пока все :)

jameszero
06-06-2006, 12:27
SAOPP
После интеграции? т.е. удаление аддона из дистрибутива?
или после установки системы? Ну так, вообщето, cab-ы и не копируются в систему... копируются только inf-ы.

SAOPP
06-06-2006, 12:33
После интеграции? т.е. удаление аддона из дистрибутива?
Именно...

simplix
06-06-2006, 13:11
SAOPP
Предложи ещё создание аддона для удаления дистрибутива, в который он будет интергироваться :))

SAOPP
06-06-2006, 13:13
Я предложил, то, что указанно выше...

Vadikan
10-06-2006, 05:42
На самом деле, предложение SAOPP достаточно прозрачно. Вместо того, чтобы пересобирать каждый раз дистрибутив или вручную вычищать аддоны, достаточно будет просто деинсталлировать аддон одним щелчком мыши.

SAOPP
10-06-2006, 09:55
Vadikan
Да, именно так, без пересобирания.

По моему ничего сложного придложенно не было, и я считаю, что такая "фича" нужна!

VitRom
18-06-2006, 14:45
Сабж. И автору Пака тоже.

Где-то в обсуждении Пака сказано, что он обрабатывает аддоны по алфавиту.
Этим объяснена, к примеру, несработка аддона БутСкрин при интеграции вместе с Экстрим-Паком (мол, БутСкрин-то прописался, но потом после "B" пошла буква "E", и перезаписала свои файлы поверх).

Может, сделать следующее?

Предложение: Изменить схему именования всех аддонов (по аналогии с именованием разных "финиш" - zz-addon и т.п.). А именно:
Добавлять к имени каждого 2-3-значный цифровой префикс
Фиксированно распределить дипазоны префиксов - для затрагивающих ядро системы (не в смысле именно кернела), или опциональные компоненты системы, или просто добавляющих аппликухи и т.д. и т.п.

Например, все критические аддоны из стандартной поставки пака становятся 99-имя_аддона. Другие критические - 90-имя_аддона. Опциональные, но полезные - 89-имя_аддона. А что-нить вроде Фоксит-а - 11-имя_аддона.

Таким образом получится гарантированная последовательность замены файлов.

2 Petya V4sechkin
Линки из 1-го поста
Работа с inf-файлами (EN) (http://gosh.msfnhosting.com/infs.htm) - 401 Authorization Required
How to Write an INF (EN) (http://www.winpack.org/petr/INF_web/) - 404 Not Found

XXXler
18-06-2006, 18:01
VitRom, Добавлять к имени каждого 2-3-значный цифровой префикс
все прелестно пока не будут интегрится 2 аддона, авторы которых отнесут их к группе "критических", и в этом случае опять играет роль дальнейшее название папки...

VitRom
18-06-2006, 19:23
все прелестно пока...Да, согласен, идеал недостижим, и подводных камней много. :-\ Хотя даже в описанном случае вероятность сбоев ("накладок", "пересечения") намного меньше, чем сейчас.

Потом, ИМХО, это можно решить централизованной раздачей индексов (тем более что новых аддонов появляется немного, и большинство из них - "аппликушные"). Т.е. "координатор проекта" смотрит список затрагиваемых файлов, и решает - так, БутСкрин, дает только понты, но при этом меняет кернел - "облегчим" до 500...

Примерно так. Хотя, конечно, это только идея, и её ещё надо обдумывать.

Boa Soft
19-06-2006, 03:02
Vadikan
На самом деле, предложение SAOPP достаточно прозрачно. Вместо того, чтобы пересобирать каждый раз дистрибутив или вручную вычищать аддоны, достаточно будет просто деинсталлировать аддон одним щелчком мыши.

Идея не нова. У Башрата в его базовом дриверпаке реализован механизм удаления следов предидущих пакетов для обеспечения корректной интеграции нового пакета.

Но, могут быть грабли. И, зачастую нужна дополнительная работа. Некотрые аддоны удалить невозможно, ибо они замещают файлы дистрибутива. Проще перобрать пакет полностью. Тем более, что при 1Gb памяти и AXP64 3200 это занимает не столь большое время, как поск глюков от удаления/добавления в пропатченый дистрибутив.

Progopis
20-06-2006, 12:49
А может, и мой UpdatePack тоже нарушает какую-то M$-лицензию..
В eula (лицензионном соглашении) от MS написано, что законодательством стран (не США и не Канада) могут предоставляться дополнительные лицензионные соглашения (имеются в виду права). Лично я считаю, что распространение файлов MS, сделанных как обновления, не нарушает никаких соглашений.

Dirk Diggler
06-07-2006, 15:46
Addon AutoIt
А никто подобные не собирал? Пригодился бы весьма. Вместе с Scite...

rusGT
08-08-2006, 18:25
ну пожалуйста, сделайте кто-нить аддон для удаления Movie maker'a & WordPad'a...я думаю, многие со мной согласны, что это не нужные вещи на компьютере....

prokazzza
15-08-2006, 13:15
Petya V4sechkin
а можно пожалуста поподробнее как можно сделать самому свой addon
использовал скрипт всеравно немного не понял потом как из него сделать addon.

vek
15-08-2006, 15:59
prokazzza
Подробной инструкции по созданию аддонов нет. В первом посте размещены ссылки на основные вспомогательные материалы.
Практически любое приложение устанавливается в три этапа:
1. Размещение необходимых файлов на жестком диске, создание ярлыков
2. Запись ключей реестра
3. Регистрация библиотек
Структура аддонов в большинстве случаев проста:
Все необходимые файлы упаковываються в Каб-архив, а установка этих файлов осуществляется инф-скриптом (для примера можно взять и посмотреть любой, уже сделанный аддон).
Сложности
1. Написать скрипт - поможет это http://oszone.net/display.php?id=3827
2. Узнать какие файлы копирует программа на диск - поможет Ashampoo Uninstaller 2.0
3. Узнать какие ключи вносит программа в реестр - поможет Ashampoo Uninstaller 2.0 + RegShot
4. Как запаковать файлы в CAB - поможет - http://oszone.net/display.php?id=2806#makecab или руководство к архиватору
5. Правильно сделать структуру аддона - поможет любой скачанный аддон с этого сайта (по образу и подобию)
6. Описание структуры - поможет http://forum.oszone.net/showthread.php?p=401229#post401229
7. Ну и чисто вспомогательный инструмент - http://forum.oszone.net/post-434018-30.html
P.S. Если Вы разберетесь и напишете подробное руководство никто возражать не будет, даже помогут. Просто каждый пытается разобраться сам. А у авторов пака и аддонов к сожалению не хватает времени на создание инструкции.

prokazzza
15-08-2006, 23:00
Petya V4sechkin

Слушай может вам создать отдельную тему для создателей addonов где каждый из них выскажет о том как он делает addonы что делает, какие проги использует, с примерами, а потом можно выбрать самое важное и сделать полную инструкцию по созданию addonов.




© OSzone.net 2001-2012