|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 9] |
|
Скрипты Inno Setup. Помощь и советы [часть 9]
|
Ветеран Сообщения: 1270 |
Профиль | Отправить PM | Цитировать
Внимание! Данная тема предназначена только для обсуждения написания скриптов!
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Скрипты Inno Setup. Помощь и советы [часть 6] | Скрипты Inno Setup. Помощь и советы [часть 6].7z Скрипты Inno Setup. Помощь и советы [часть 7] | Скрипты Inno Setup. Помощь и советы [часть 7].7z Скрипты Inno Setup. Помощь и советы [часть 8] | Скрипты Inno Setup. Помощь и советы [часть 8].7z |
|
Отправлено: 16:09, 04-04-2018 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Здраствуйте. Подскажите, пожалуйста, как создать патч с помощью Inno Setup? Обыкновенный инсталятор непрактичен из-за своего веса. Вчера использовал софтинку Inno Setup XDELTA Patch Maker, но два факта огорчили меня сильно - во первых, файла два (exe и bin), не один, а во вторых, окно инсталла сильно упрощенно по сравнению с инсталлами от самого Inno Setup.
Грубо говоря, есть два архива - оригинальный и модифицированный. Надо, чтобы инсталл содержал только разницу между ними (патч-данные). Тогда он будет весить около всего 40 Мб, чего я и хочу добиться, но чтобы окно инсталла осталось неизменным. |
Отправлено: 15:51, 16-06-2018 | #51 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 861
|
Профиль | Отправить PM | Цитировать Coломoн Keйн, можете попробовать Mole`s Smart Version Patch Constructor
|
------- Отправлено: 22:29, 16-06-2018 | #52 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Цитата habib2302:
|
|
Отправлено: 22:56, 16-06-2018 | #53 |
Новый участник Сообщения: 28
|
Профиль | Отправить PM | Цитировать Coломoн Keйн, есть еще патчер Visual Patch от Indigo Rose, там патчи можно создать как мастер со страницами наподобие Inno Setup. А для создания автономного патча в ISXPM нужно убрать галку Create Launcher, если размер патча на выходе небольшой.
А чтобы самому включить в свой инсталлятор патч-файл и применить его при установке, это нужно консольные утилиты использовать, типа xdelta или jojodiff, разбираться, как они работают и использовать их в своем инсталляторе. |
Отправлено: 23:01, 16-06-2018 | #54 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Цитата usermode:
Цитата Coломoн Keйн:
Цитата usermode:
|
|||
Отправлено: 14:47, 17-06-2018 | #55 |
Новый участник Сообщения: 28
|
Профиль | Отправить PM | Цитировать Цитата Coломoн Keйн:
https://sourceforge.net/projects/jojodiff/ Для генерации патч-файла запустить из командной строки: jdiff.exe -b "C:\original.file" "C:\modified.file" "C:\resultpatch.file" а для применения, полученный файл с изменениями resultpatch.file включить в установку и после инсталляции выполнить в Exec или RunTask: jptch.exe "C:\original.file" "C:\resultpatch.file" "C:\modified.file" (естественно, с путями константами) в итоге после установки указанный original.file будет пропатчен. но для этого может понадобится манипуляция удаления старого файла с переименованием пропатченного файла в оригинальное имя стандартными средствами Inno. А в ISXPM можно вообще сделать невидимый Silent патч без окна (или SilentForm - маленькая форма с индикатором прогресса выполнения, чтобы пользователю было понятно, что применяется обновление и ничего не зависло) с указанием параметров с путем для применения и запускать его из инсталлятора, вся информация есть в справке, в нем поддерживаются константы Inno Setup. Просто когда нужно будет поставить апдейт с обновлением для сотни файлов, то делать вручную это не очень хорошая идея, поэтому создавалась данная программа, чтобы довести все до полного автоматизма. |
|
Последний раз редактировалось usermode, 17-06-2018 в 19:45. Отправлено: 19:33, 17-06-2018 | #56 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Цитата usermode:
Просто этот файл, по которому патч-данные делаются - единственный, который устанавливается. Можно как то сделать применение патч-данных к оригинальному файлу как раз в момент установки, не после нее? Или я уже слишком требовательный к инсталлятору? И да, я так понимаю, можно же скомбинировать все это дело с существующим скриптом, чтобы не терять его главных функций? |
|
Отправлено: 20:41, 17-06-2018 | #57 |
Новый участник Сообщения: 28
|
Профиль | Отправить PM | Цитировать Цитата Coломoн Keйн:
|
|
Отправлено: 21:15, 17-06-2018 | #58 |
Пользователь Сообщения: 131
|
Профиль | Сайт | Отправить PM | Цитировать Доброго всем вечера.
|
Последний раз редактировалось Sotonisto, 28-06-2018 в 06:22. Отправлено: 19:36, 18-06-2018 | #59 |
Старожил Сообщения: 291
|
Профиль | Отправить PM | Цитировать Цитата Sotonisto:
Скрытый текст
[Setup] AppName=My Application AppVersion=1.5 DefaultDirName={pf}\My Application [code] var Text1: TLabel; Text2: TLabel; Text3: TLabel; procedure InitializeWizard(); begin Text1 := TLabel.Create(WizardForm); with Text1 do begin Parent := WizardForm.SelectDirPage; Alignment := taRightJustify; Caption := 'Текст справа'; Font.Color := clBlue; Font.Height := -13; Font.Name := 'Tahoma'; Font.Style := [fsBold, fsItalic]; SetBounds(ScaleX(0),ScaleY(120),ScaleX(417),ScaleY(16)); end; Text2 := TLabel.Create(WizardForm); with Text2 do begin Parent := WizardForm.SelectDirPage; Alignment := taCenter; Caption := 'Текст по центру'; Font.Color := clBlue; Font.Height := -13; Font.Name := 'Tahoma'; Font.Style := [fsBold, fsItalic]; SetBounds(ScaleX(0),ScaleY(140),ScaleX(417),ScaleY(16)); end; Text3 := TLabel.Create(WizardForm); with Text3 do begin Parent := WizardForm.SelectDirPage; // Alignment := taLeftJustify; Caption := 'Текст слева'; Font.Color := clBlue; Font.Height := -13; Font.Name := 'Tahoma'; Font.Style := [fsBold, fsItalic]; SetBounds(ScaleX(0),ScaleY(160),ScaleX(417),ScaleY(16)); end; end; |
|
------- Отправлено: 21:26, 21-06-2018 | #60 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 7] | El Sanchez | Автоматическая установка приложений | 2499 | 02-02-2015 08:59 | |
Скрипты Inno Setup. Помощь и советы [часть 6] | El Sanchez | Автоматическая установка приложений | 2494 | 10-03-2014 11:51 | |
Скрипты 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 |
|