![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 6] |
|
Скрипты Inno Setup. Помощь и советы [часть 6]
|
Ветеран Сообщения: 1274 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: |
|
Отправлено: 19:06, 28-03-2013 |
Пользователь Сообщения: 80
|
Профиль | Отправить PM | Цитировать |
Отправлено: 11:30, 12-10-2013 | #1241 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
SHVtYW4= Сообщения: 3451
|
Профиль | Отправить PM | Цитировать Цитата Mat_y:
Цитата El Sanchez:
У Inno может быть вида {XXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}_is1 или MyProg_is1, а у других {XXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}, MyProg или вообще XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX. Не известно какой установщик используется у Mat_y, тем более как он указывает что не его: Цитата El Sanchez:
|
|||
------- Отправлено: 12:54, 12-10-2013 | #1242 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата Nordek:
Цитата Mat_y:
Цитата Mat_y:
|
|||
Отправлено: 16:51, 12-10-2013 | #1243 |
Пользователь Сообщения: 88
|
Профиль | Отправить PM | Цитировать Всем приветы! Надеюсь на вашу помощь, а дело в следующем: инсталлятор не правильно показывает процентаж распаковки файлов, причем скрипт абсолютно чистый (не модифицированный). Архив всего один который был сжат Freearc'ом ([b]Наилучшее асимметричное (с быстрой распаковкой): -m9x -ld192m -s256m]/b])... Вообщем проценты доходят до 100% но распаковка все еще продолжается секунд 5-ть, в остальных же случаях, игры которые я так же паковал и использовал тот же скрипт распаковывались нормально... Пробовал как ручную расстановку процентных соотношений так и автоматическую с использованием records.inf, результат тот же.. в чем может быть причина?
|
Отправлено: 18:05, 12-10-2013 | #1244 |
SHVtYW4= Сообщения: 3451
|
Профиль | Отправить PM | Цитировать Цитата Mat_y:
Если удаление, то примерно в таком духе |
|
Отправлено: 21:47, 12-10-2013 | #1245 |
Пользователь Сообщения: 80
|
Профиль | Отправить PM | Цитировать AppId программы выглядит так:
Этот ключ я нашел в реестре для установленной программы в секции HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1 Благодаря этому AppId мой установщик находит правильный путь к установленной программе. Но если я удаляю установленные сверху программы файлы (через Uninstall ), то удаляется и запись о программе в реестре (точнее она остается, но даже не открывается, выдавая ошибку). Nordek, что делает эта строчка? procedure CurPageChanged(CurPageID: Integer); begin if RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#SetupSetting("AppID")}_is1') then else begin DeleteB.Visible := false; end; end; Мне просто надо, чтобы деинсталлятор удалял файлы установленные, но реестр просто не трогал. |
Отправлено: 11:40, 13-10-2013 | #1246 |
Пользователь Сообщения: 51
|
Профиль | Отправить PM | Цитировать [setup]
DefaultDirName="{code:MyConst}" [code] function MyConst(Default: String): String; var ResultStr: String; begin RegQueryStringValue(HKLM, 'Software\...', 'Install Dir', ResultStr); Result:=ResultStr end; Вопрос: Как сделать, чтобы в случае отсутствия ссылки реестра инсталлятор автоматический указывал стандартный путь установки {pf}? Если кто знает помогите пожалуйста. |
Отправлено: 13:28, 13-10-2013 | #1247 |
SHVtYW4= Сообщения: 3451
|
Профиль | Отправить PM | Цитировать Цитата Mat_y:
Цитата Mat_y:
Могу предложить такой вариант [Registry] Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{B7EB229F-2DFB-4612-AFC0-99773E1E14A8}_is1; ValueType: string; ValueName: InstallLocation2; ValueData: {app}\; Flags: uninsdeletevalue uninsdeletekeyifempty Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{B7EB229F-2DFB-4612-AFC0-99773E1E14A8}_is1; ValueType: string; ValueName: UninstallString2; ValueData: """{app}\unins000.exe"""; Flags: uninsdeletevalue uninsdeletekeyifempty Тебе нужно чтоб при удалении не стиралась основная информации о инсталляции. Значит используем во втором инсталляторе секцию [Registry] для того чтоб второй инсталлятор дописывал для кода информацию о удалении (о себе, что он там установлен). Секцию "CreateUninstallRegKey=false" используем для того чтоб второй инсталлятор не вписывал о себе информацию и не заменял основную установку собой, для этого у второго есть секция [Registry] от куда дополняется информацией для кода InstallLocation2 и UninstallString2-ом. "UninstallFilesDir={app}\Uninstall" служит для деинсталлятора, создаёт деинсталлятор в папке Uninstall Таким образом, второй инсталлятор не трогает реестр т.е только дополняет. А при деинсталляции созданные им секции удаляет не затрагивая основную информацию первого. А код, выполняет поиск. Существует ли второй компонент в системе или нет. (если что, в коде сам заменишь InstallLocation и UninstallString на InstallLocation 2 и UninstallString 2). Надеюсь понял мою идею. |
||
Последний раз редактировалось Nordek, 13-10-2013 в 14:10. Отправлено: 13:38, 13-10-2013 | #1248 |
Старожил Сообщения: 440
|
Профиль | Сайт | Отправить PM | Цитировать Raz3r,
|
------- Отправлено: 13:46, 13-10-2013 | #1249 |
SHVtYW4= Сообщения: 3451
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 14:01, 13-10-2013 | #1250 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 5] | El Sanchez | Автоматическая установка приложений | 1999 | 28-03-2013 19:09 | |
Скрипты Inno Setup. Помощь и советы [часть 4] | El Sanchez | Автоматическая установка приложений | 2099 | 22-05-2012 23:16 | |
Скрипты Inno Setup. Помощь и советы [часть 3] | Serega | Автоматическая установка приложений | 3755 | 26-10-2011 17:58 | |
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] | Serega | Автоматическая установка приложений | 2651 | 08-11-2010 18:34 | |
Скрипты Inno Setup Compiler | QAZAK | Автоматическая установка приложений | 7 | 15-01-2007 17:59 |
|