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

Показать сообщение отдельно

Аватара для 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