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

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

Ответить
Настройки темы
Инфо - Руководство по созданию аддонов (текущая версия)

Аватара для volk1234

Старовер


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


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

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


Изменения
Автор: volk1234
Дата: 24-09-2010
Описание: новая версия на сайте

Руководство перенесено в статью на сайте, но его обсуждение не закончилось. Любой может добавить в него что- нибудь новенькое.

Предлагаю сосредоточиться пока на двух разделах, которые будут дорабатыватся в ветке и только потом переносится в Руководство.

Сейчас обсуждается статья: - новое приложение 9.
===============
*Если вы заметили орфографические ошибки, пишите, пожалуйста, в личку

Отправлено: 19:19, 27-02-2008

 

Аватара для volk1234

Старовер


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

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


Цитата Vadikan:
Предлагаю приложение 7 поднять выше и сделать его приложением 5 »
Голосую ЗА. Достойний таварищ на павишение!

Цитата Vadikan:
Если она заимствована с других русских сайтов (пример - приложение 5) »
Пример неудачный, данная информация наполовину заимствована из поста Drinko(где он брал инфу не знаю, но подозреваю что и с
осзона тоже), наполовину с ангельского micrososft ... навскидку счас не дам ссылку, статья про этапы установки WINXP.
txtsetup - gosh указано
sysoc- сам
Optional components - SDK IE 6

Копи - паста особого нет (к сожалению для меня ), в основном, в тексте статьи использовалась инфа с форума осзона - своими словами
или предложенная инфа участниками - их словами, а также вольный перевод (настолько вольный, что комитет по авторским правам не докопается )

Еще
Цитата ...Пример 1:
программка не очень большая, записей в реестр не делает (то есть практически переносное)
Я понимаю, что портэйбл это нерусское слово, но в конкретном предложении падеж не прослеживается никак. может написать portable?
Или это Vadikan испытывал новое секретное оружие - бот-коректировщик американизмов ?

-------

Ю-ху!


Отправлено: 02:33, 23-05-2008 | #171



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

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


Ветеран


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

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


Rostlv,
Цитата Rostlv:
правило для авторов аддонов - все файлы, интегрируемые в дистрибутив должны быть названы заглавными буквами. »
Нафиг. Не хватало еще тратить время на такую ерунду.
Когда файлы интегрированны в дистрибутив, то всем уже совершенно пофиг какие именно. Главное чтобы работало.

-------
Я не развожу политику в подписи
ПТН ПНХ


Последний раз редактировалось Vadikan, 23-05-2008 в 10:50. Причина: орфография


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


Аватара для jameszero

Модератор


Moderator


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

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


Rostlv
Цитата Rostlv:
Предлагаю ввести правило для авторов аддонов - все файлы, интегрируемые в дистрибутив должны быть названы заглавными буквами. Думаю, что дистрибутив от этого приобретёт надлежащий вид. Сейчас же после интеграции многих аддонов, в особенности крупных, приходится самому переименовывать файлы, что не очень удобно.»
Правило или не правило, а в аддоне реализовал - [addon] CaseUP

Цитата Rostlv:
хорошо бы определиться с расширениями файлов в "RUN" в плане регистра, сейчас же одни аддоны в верхнем, другие - наоборот. Если посмотреть "svcpack.inf", всё сразу видно. »
Внутри TXTSETUP.SIF вы тоже правите имена файлов дистрибутива Windows?

-------
RuntimePack официальный сайт
--
мои аддоны в облаке

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

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

Отправлено: 12:42, 23-05-2008 | #173


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

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


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

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


Цитата jameszero:
Правило или не правило, а в аддоне реализовал - [addon] CaseUP »
Добавлю функцию в интегратор.

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

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

Отправлено: 14:28, 23-05-2008 | #174


Пользователь


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

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


volk1234, недавно столкнулся с дополнительными сведениями про аддоны sysoc, и все благодаря ya158
может вы то это и знаете, но в руководстве это не отмечено, а мне кажется для понимания разницы между типами аддонов эти сведения пригодились бы
1 - оказывается sysoc аддоны встраиваются в дистрибутив как компоненты винды, а не как стороние программы, и по идее должны оторбражаться в менеджер Установка и удаление компонентов Windows и соответственно устанавливаться и удаляться оттуда, хотя я кстати, ни разу такого не встречал.
2 - sysoc аддоны устанавливаются на т24, а не на т13, как svcpack
3 - если это верно, то для удаления веток реестра не всегда достаточно следующей секции с одной строкой, хотя в руководстве написано что довольно одной строки.
[PROG.DelReg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%"

вот ссылка на посты ya158 который мне помог разобраться в некоторых вещах
http://forum.oszone.net/post-807983-462.html

Отправлено: 16:56, 23-05-2008 | #175


Аватара для volk1234

Старовер


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

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


DyadyaGenya
Отвечу цитатами из руководства, которое вы видимо не читали. Отсюда ваши проблемы с написанием inf- скриптов и аддонов sysoc.
Цитата DyadyaGenya:
2 - sysoc аддоны устанавливаются на т24, а не на т13, как svcpack »

Цитата Приложение 5. Этапы и механизмы установки Windows XP/2003. Log-файлы, создаваемые в процессе установки.:
http://oszone.net/6946#d4

8. Установка дополнительных компонентов ОС (sysoc.inf) С помощью sysoc.inf менеджер установки строит список файлов для установки этих компонентов. Затем этот список сверяется с файлом unattend.txt (winnt.sif) если он есть. По результатам сверки образуется конечный список устанавливаемых компонентов..
Это происходит между T37 и T32, а не на T24 !!! Уж скорее на Т34, хотя на мой взгляд это не такой уж линейный процесс и к одной минуте его врядли можно привязать, например, тот же ocmanage.dll (диспетчер дополнительных компонентов) стартует аж на T38...



Цитата DyadyaGenya:
1 - оказывается sysoc аддоны встраиваются в дистрибутив как компоненты винды, а не как стороние программы, и по идее должны оторбражаться в менеджер Установка и удаление компонентов Windows и соответственно устанавливаться и удаляться оттуда, хотя я кстати, ни разу такого не встречал. »
Цитата Аддоны, использующие SYSOC:

.... Важно! Чтобы интегрировать аддон, но при этом НЕ уставить его, чтобы он был доступен впоследствии для установки через менеджер компонентов Windows, необходимо в установочных INF-файлах каждого аддона закомментировать параметр Modes точкой с запятой.
Цитата Приложение 4. Файл Sysoc.inf:

....Для размещения вашего приложения, устанавливаемого через Sysoc в группе 3rdParty (Программы сторонних разработчиков), добавьте в исполняемую сецию инструкцию Parent=NonMS. Также, уберите параметр HIDE из строки в Sysoc.
... ;Modes=0,1,2,3 ;аддон не будет установлен по умолчанию, его доустановка возможна из "Установки компонентов Windows"
и целиком вашему вопросу посвящено Приложение 7. Секция [Optional Components]



Цитата DyadyaGenya:
3 - если это верно, то для удаления веток реестра не всегда достаточно следующей секции с одной строкой, »
Покажите где в руководстве написано, что для удаления ВСЕХ записей сделаных при установке, надо удалить только одну строку в реестре ????
Для удаления всех записей сделаных в реестре надо ( можно логически догадатся) выполнить действия обратные добавлению в реестр. Как правило для этого достаточно в секции Деинсталяции поубивать разделы(DelReg) реестра созданные программой, либо скопировать раздел регистрации без флагов и значений( только с ключами), в созданый раздел удаления из реестра.

Приведенная вами строка

Код: Выделить весь код
[PROG.DelReg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%PROG_NAME%"
Всего лишь удаляет приложение из оснастки Установка\удаление программ.


Единственное с чем соглашусь, что надо бы добавить в руководство разьяснение про Optional Components в раздел Sysoc аддонов а не в приложения
Как там говорили на BBS лентах? RTFM ! - Читайте руководство !

DyadyaGenya

Добавлю пожалуй еще,

Основные файлы используемые в аддонах SYSOC:

Txtsetup.sif
Dosnet.inf
Sysoc.inf


Так вот способ установки аддонов называется Sysoc именно из за использования Sysoc.inf.
Если необходимо просто скопировать при установке файлы в папку %Windir%, можно обойтись и без Sysoc.inf.
Просто добавив строки в Txtsetup.sif и Dosnet.inf.
Менеджер установки дополнительных компонентов используется как раз для полноценной установки компонентов, добавления записей в реестр и тд...
Надеюсь помог разобраться....

-------

Ю-ху!


Последний раз редактировалось volk1234, 23-05-2008 в 19:22.

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

Отправлено: 18:58, 23-05-2008 | #176


Пользователь


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

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


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

Код: Выделить весь код
Удаление записей реестра, так же как и ярлыков, отличается от добавления в реестр. Необходимо указать только корневой раздел, в данном случае, HKCU,"Software\Punto Switcher", и она будет удалена со всем подразделами. Секцией [CTFMON.Restore] мы восстанавливаем в автозагрузке стандартный переключатель раскладок, а в секции [CTF.dll.Restore] регистрируем связанные с ним библиотеки.
теперь по поводу встраиваемости аддона:
Код: Выделить весь код
Данная секция служит для добавления устанавливаемого приложения в список оснастки "Установка\Удаление программ \Компоненты Windows" 
Секция не будет исполнена при попытке выполнить файл по правому щелчку мышью, через команду [Setupx.dll InstallHinfSection точка_входа] также
нельзя выполнить [Optional Components]. В первом случае будет выполнятся секция [DefaultInstall], во втором секция указанная точкой входа. Параметры 
[Optional Components] будут игнорированны.

Насколько я понимаю для обработки дополнительных инструкций секции [Optional Components] и существует sysoc.inf, ocgen.dll, sysocmgr.exe.
В основном инструкции [Optional Components] служат для управления отображения компонентов в окне "Компоненты Windows".
так я здесь не увидел, как в прочем и в остальной части статьи, что это обязательно, просто как выбор куда будет интегрироваться и устанавливаться, тоесть вроде как наличие альтернативы например, чтоб не встраивать в менеджер "установка и удаление программ", но тут не показано, что данный тип аддонов является именно компонентом винды, если можно так сказать

ну и по поводу того, когда на каком этапе устанавливаются sysoc аддоны. Возможно было бы понятнее, если бы эти этапы как на мой взгляд не были описаны отстраненно от аддона, тоесть вы похоже просто взяли цитату из другой статьи и вставили в свою без особой привязки к тексту. Чтобы любой Вася Пупкин, который очень хочет, старается, но к сожалению не все у него получается, мог при этом прочитать и сообразить к чему этот материал, на мой взгляд стоило бы обьяснить более подробно Поверьте, будь сказано раньше, что любая программа, встраиваемая в дистрибутив винды посредством sysoc, становиться как бы компонентом винды , а не отдельной программой, и поэтому её интеграция может быть сопоставима с этапами установки самой винды, вопросов бы возникало меньше.
и кстати, это конечно не критично, но авторегистрация аддона у меня сработала именно на т24, поэтому и возник вопрос о том, что этим он отличается от svcpack, тот ведь как я понимаю срабатывает целиком на т13, вместе с той же авторегистрацией.

Отправлено: 20:12, 23-05-2008 | #177


Аватара для volk1234

Старовер


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

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


Цитата DyadyaGenya:
тогда я тоже отвечу цитатами из руководства »
И что же говорится в приведенной цитате? Что она доказывает?
Разделы реестра можно удалить, но для удаления например, зарегестрированных библиотек из SharedDlls, такой способ не подходит,
надо удалять записи по одной. Отличие добавления в реестр записей от их удаления в отсуствии параметров.
Пример:

Добавление:
Код: Выделить весь код
[ACDSee.reg] -добавляем информацию для оснастки Установка\удаление программ
HKLM,%Key2%,"DisplayName",,"ACDSee 3.1 SR1 rus"
HKLM,%Key2%,"DisplayIcon",,%16422%\%Prog%\ACDSee.exe,0
HKLM,%Key2%,"UninstallString",,"rundll32.exe advpack,LaunchINFSectionEx %17%\acdsee3.inf,ACDSee.Uninstall"

[Regacdsee] -добавляем информацию о программе и библиотеках в реестр
HKLM,%Key1%,"InstallationDate", , "DAKAMFIGGHCOBAOF351494B3"
HKLM,%Key1%,"InTouchSettings",0x00000001,45,3D,78,00,00,00,00
HKLM,%Key1%,"LicenseNumber", ,"xxxxxxxxxxxxxxxxxx"
HKLM,%Key1%,"InTouchConfigRemind", ,"KGNMDHPGGHCOCJLE2B8FD833"
HKLM,%Key1%\Tip,"StartUp",0x00010001,1
    
HKLM,%Key%\App Paths\ACDSee.exe, , , "C:\Program Files\ACD Systems\ACDSee\ACDSee.exe"
HKLM,%Key%\App Paths\ACDSee.exe,"Path", ,"C:\Program Files\ACD Systems\ACDSee"
 
HKLM,"SOFTWARE\Kodak\DC210\SDKLibrary","InprocServer32", ,"C:\WINDOWS\system32\dc210.dll"
HKLM,"SOFTWARE\Kodak\DC240\SDKLibrary","InprocServer32", ,"C:\WINDOWS\system32\dc240.dll"
HKLM,"SOFTWARE\Kodak\DC280\SDKLibrary","InprocServer32", ,"C:\WINDOWS\system32\dc280.dll"

HKLM,%Key3%, "C:\Program Files\Common Files\ACD Systems\PlugIns2\acdcp.dll" ,0x00010001, 2
HKLM,%Key3%, "C:\Program Files\Common Files\ACD Systems\PlugIns2\AM_ZIP.apl" ,0x00010001, 3

[strings]
Key="SOFTWARE\Microsoft\Windows\CurrentVersion"
Key1="SOFTWARE\ACD Systems\ACDSee"
Key2="Software\Microsoft\Windows\CurrentVersion\Uninstall\ACDSee3.1RC1"
Key3="SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls"
А теперь удаление этих же записей при деинсталяции:

Код: Выделить весь код
[ACDSee.DelReg]
HKLM,%Key1%
HKLM,%Key2%
HKLM,"SOFTWARE\Kodak
HKLM,%Key3%, "C:\Program Files\Common Files\ACD Systems\PlugIns2\acdcp.dll" 
HKLM,%Key3%, "C:\Program Files\Common Files\ACD Systems\PlugIns2\AM_ZIP.apl"
Хорошо видно, что созданные нами разделы ACDSee и Kodak мы просто убиваем на корню, а вот SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls нельзя удалять так как там куча сторонних dll, поэтом их надо удалять по одной, указывая для удаления имя параметра без значения.




В руководстве по созданию аддонов много чего не сказанно. Например задаваемые вами вопросы отосятся к написанию INF- скриптов, а не к аддонам как таковым. Поищите в интернете всю информацию по INF- файлам и работе с реестром, и вам все станет понятнее.

Цитата DyadyaGenya:
что любая программа, встраиваемая в дистрибутив винды посредством sysoc, становиться как бы компонентом винды , а не отдельной программой, »
И не только в дистрибутив и не только через SYSOC. Вы ошибаетесь. Возможность добавить программу в остнастку Компоненты Windows еще не означает слияние с ОС. Грубо говоря вы можете выбрать где будет ярлычок для удаления программы в Установке\Удалении или в Компоненты Windows. Программа установленная через Sysoc, суть есть, отдельная программа! Это как считать вас военным, если вы подьехали на военной машине и отдолжили военную форму.

В общем хотел бы заметить, что вы очень торопитесь, не читаете и не обдумываете, а просматриваете руководства и написанные вам посты (я не только про эту ветку говорю), на мой взгляд вам мешает именно спешка. Я, вообще, не вижу никаких проблем с написанием простейших аддонов. Я когда писал первый взял чужой аддон и руководство по INF- файлам, и подглядывая в оба источника написал работающий скрипт. Затем доработал его секцией удаления через DelDirs, причем на этот этап потратил около недели, но зато научился и знаю как пользоватся этим инструментом. Вы я насколько понял сразу перепрыгнули на rundll32.exe advpack,DelNodeRunDLL32. Затем я занялся реестром и сложными ярлыками, довольно много полезного я почерпнул
распотрошив дистрибутив WIN98 - она почти вся на INF - скриптах, для изучения синтаксиса добавления в реестр советую аддон MyCustom. Причем я не пользуюсь reg2inf и прочими средствами автоматизации и вам не советую, эти средства автоматизации для тех кто уже все умеет. И ,последнее, зря вы сразу за сложные программы взялись ИМХО.

-------

Ю-ху!

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

Отправлено: 22:26, 23-05-2008 | #178


(*.*)


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

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


Цитата volk1234:
а то я сам у ся нашел пару очипяток »
Исправлены.

Цитата volk1234:
Я понимаю, что портэйбл это нерусское слово, но в конкретном предложении падеж не прослеживается никак. может написать portable?
Или это Vadikan испытывал новое секретное оружие - бот-коректировщик американизмов ? »
Да, бот не прошел тестирование Исправлен падеж.

Цитата Vadikan:
Предлагаю приложение 7 поднять выше и сделать его приложением 5 - это связанные вещи вроде. »
Сделано.

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

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

-------
Канал Windows 11, etc | Чат @winsiders

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

Отправлено: 07:48, 24-05-2008 | #179


Аватара для volk1234

Старовер


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

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


Цитата Vadikan:
Если других изменений в статье в ближайшее время не планируется »
Думаю слегка подредактировать раздел Sysoc в части определения типа аддона, затронутого DyadyaGenya

-------

Ю-ху!


Отправлено: 13:44, 24-05-2008 | #180



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - [решено] Как определить какая версия XP Корпоративка или Oem версия? Rock Microsoft Windows 2000/XP 2 10-01-2008 11:18
Текущая настройка безопасности ActiveX Motto Защита компьютерных систем 1 26-12-2004 19:05
Что такое текущая директория? Guest Программирование и базы данных 11 24-07-2004 00:19




 
Переход