Показать полную графическую версию : [решено] Автоопределение каталога установки при инсталяции и внесение значений в Реест
родной инсталлятор (Mozilla Firefox 35.0.1.0), »
Это ни разу не «родной» инсталлятор, а сборка от Яндекса с его двумя свистоперделками совершенно не нужными расширениями и с заменой всего и вся на свои сервисы.
Я посмотрел куда импортирует нужные кусты… Так вот с HKLM no problem, a вот с HKU ступор так как пути имеют вид: HKU\SID_учетной_записи\... »
Продемонстрируйте, что и как Вы смотрели.
A drum moons
22-02-2015, 10:23
Продемонстрируйте, что и как Вы смотрели. »
Можно через Ashampoo UnInstaller 5 (http://s37-temporary-files.radikal.ru/d8792d29b6894689883f4571f32c7819/-929206895.gif), удобней чем через Regshot. Конечно можно из HKU можно запихнуть все в HKLM и браузер будет по умолчанию для всех пользователей. И меня это не напрягает, если я ставлю его себе, а не кому то у кого вся семья под разными учетками на одной машине. Но просто интересно как инсталлятор определяет SID, хотя может он ссылается на другой куст реестра в HKLM, а реестр сам затем все делает. Прошу заметить это догадки, но никак не утверждения.
Продемонстрируйте — это значит продемонстрируйте. Можете использовать скриншоты.
A drum moons
22-02-2015, 11:07
Так я и использовал скриншоты. Или надо более подробней? Если надо, то могу.
A drum moons
22-02-2015, 11:22
Установил родную от мозиллы. Посмотрел реестр, a там только в HKLM все суется. Видать для всех юзверей. Ну и ладно.
Без сервисов яндекса и плагинов браузер летает. Хотя до этого отключал, но не все. Признаюсь мне нравиться, некоторые фишки в яндексе (переводчик и встроенный поисковик этого сервиса). Но все равно интересно, как инсталлятор от Яндекса сумел определить SID (ну или что то типо того). Это не критически важно, но если узнаете, то дайте мне знать, спасибо.
Smart Install Maker »Не о чём, погремушка для баловства. Даже серьёзным инструментом назвать не могу.
Понимаю что справку RusHelp.chm даже не открывали (Совет: Почитайте обязательно!)?
Делаю скрытую установку, то есть без диалоговых окон, инсталляция будет по умолчанию, без вмешательства пользователя. »Т.е и вы думаете что продвинутый пользователь не сообразит использовать ключ /p в командной строке для смены каталога установки программы?
Setup.exe /p=D:\WinDjView\
И тогда ваши внесения:
Надо так "C:\Program Files\WinDjView\WinDjView.exe" "%1". »
будут нужны как собаке пятая нога.
Правильнее будет так:
"%InstallPath%\WinDjView.exe" "%1"
Хотя я думаю проблема в том, что я не создовал ассоциацию в HKCR. А создавал в HKLM. »но например при запуске любого документа djvu происходит ошибка типа он не ассоциирован с нужным им расширением. »WinDjView сам не умеет этого делать?
Смотрите как это происходит:
"%InstallPath%\WinDjView.exe" /RegisterFileTypes
инсталлятор отрабатывает именно так.
Хочется через реестр?
Вот вам через реестр:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.djv]
@="DjVu.Document"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.djvu]
@="DjVu.Document"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DjVu.Document]
@="DjVu Document"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DjVu.Document\DefaultIcon]
@="C:\\Program Files\\WinDjView\\WinDjView.exe,0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DjVu.Document\shell\open\command]
@="\"C:\\Program Files\\WinDjView\\WinDjView.exe\" \"%1\""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DjVu.Document\shell\open\ddeexec]
@="[open(\"%1\")]"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DjVu.Document\shell\open\ddeexec\Application]
@="WinDjView"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DjVu.Document\shell\open\ddeexec\IfExec]
@="[rem open]"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DjVu.Document\shell\open\ddeexec\Topic]
@="System"Windows Registry Editor Version 5.00
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.djv]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.djvu]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\DjVu.Document]
Вот (https://yadi.sk/d/Rxu8sDakepkrB) пару примеров WinDjView.
Покажите скриншоты с информацией, на основании которой Вы сделали выводы о:
a вот с HKU ступор так как пути имеют вид: HKU\SID_учетной_записи\... »
A drum moons
22-02-2015, 12:59
Nordek, но я собираю инсталлы для себя на WPI, с своими заранее выставленными, сконфигурированными настройками, конечно можно использовать ключи тихой установки, но это чревато тем, что потом надо будет настраивать приложение под себя, а это лишние телодвижения. Windjviewer это пройденный этап, и про переменные окружения мне давно известно. Про ключ /p в командной строке для смены каталога установки программы я не знал, снимаю шлапу.
Чем SIM плох я не понимаю, да он проще всяких навороченных inno setup'ов, но так мне не надо создавать всяких диалоговых окон, файлов ответа и т.д. Мне требуется запаковать файлы и добавить кусты реестра и все, тем более это тихая установка, освобождает от лишнего гемора.
Да и какой пользователь будет ставить на D:\? Вот Вы сами так часто ставите? Я думаю нет потому как,если ось на другом диске и она полетит, то после переустановки оси все необходимое в реестре для WinDjViewer'а тоже будет потеряно. Я думаю выбор директории не так уж и важен, тем более если инсталлятор правильно вносит данные в реестр. Конечно у пользователя может быть тысяча причин чтобы инсталлировать на другой диск, но на практике такое встречается весьма редко 1 из 100.
Iska, вот скрин (http://s36-temporary-files.radikal.ru/4de5b6bb967c424da333f61c7c72758c/-929206895.gif) это уже русская сборка от Моzill'ы (не от яндекса) Ссылка на русскую версию (https://download.mozilla.org/?product=firefox-35.0.1-SSL&os=win&lang=ru). В чисто английской сборке HKU не присутствует. Думаю можно обойтись и без HKU, взять от английской версии кусты реестра, файлы от русской версии firefox'а + можно прилепить профиль с заранее установленными дополнениями и слить воедино.
A drum moons, как я и предполагал, Вы некорректно интерпретируете результаты, показанные на приведённом скриншоте.
«S-1-5-21-<machine RID>-500» — это SID учётной записи встроенного администратора (см., например: 2.4.2.4 Well-Known SID Structures (https://msdn.microsoft.com/en-us/library/cc980032.aspx)). Под которым, как я полагаю, Вы и производите установку. «HKU\S-1-5-21-<machine RID>-500» — реальное положение в реестре загруженного куста текущего (HKCU) пользователя. Т.е., в реальности всё пишется в HKCU, никаких «определений SID» не происходит, да и ни к чему это.
Ровно то же самое происходит и ниже, с «HKU\S-1-5-21-<machine RID>-500_CLasses» — это реальное положение в реестре пользовательской части описания классов, которая после её наложения на машинную часть описания классов, отображается в реестре как «HKEY_CLASSES_ROOT». Т.е., и тут нет никаких «определений SID» при инсталляции. Происходит обычная работа с HKCR.
Про детали работы с реестром можете почитать здесь же, на сайте: реестр site:www.oszone.net - Поиск в Google (https://www.google.ru/search?q=%D1%80%D0%B5%D0%B5%D1%81%D1%82%D1%80+site:www.oszone.net), прежде всего — Введение: описание реестра Windows (http://www.oszone.net/5617/).
A drum moons
22-02-2015, 13:59
Значит твики добавляются в HKCU, а после работы реестра (слияний и т.д.), изменения отображаются в HKU. Именно в HKCU надо добавлять твики, которые добавлены в HCU. Я Вас правильно понял?
Значит твики добавляются в HKCU »
Да. Только не выражайтесь «твики».
а после работы реестра (слияний и т.д.), изменения отображаются в HKU. »
Не правильно понимаете. Никакого «после работы реестра/слияний и т.д.» не происходит. Прочтите то, что я указал почитать в предыдущем сообщении.
Именно в HKCU надо добавлять твики, которые добавлены в HCU. »
То, что на Вашем скриншоте — да.
A drum moons
22-02-2015, 22:09
Ну ладно, раз так, то я покидаю эту планету на некоторое время. Но я еще вернусь. tnx!
Iska вытирает скупую мужскую слезу. Мы будем ждать тебя, T-800, модель 101 ;).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.