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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 8]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 8]

Аватара для El Sanchez

Ветеран


Contributor


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


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

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


Изменения
Автор: El Sanchez
Дата: 22-10-2015
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:

Показать/скрыть: Ссылки на примеры скриптов:

Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;

  • RegExporter - Фриварная утилита для экспорта реестра и конвертации файлов *.reg и *.ini в инсталляционные скрипты Inno Setup и NSIS.
    Последняя версия: 1.2.0 [23.09.2014] - Скачать;



Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:

Скрипты Inno Setup. Помощь и советы [часть 6]
Скрипты Inno Setup. Помощь и советы [часть 7]

Отправлено: 08:52, 02-02-2015

 

Новый участник


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

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


Ребята помогите пожалуйста . нужен скрипт или пример на uninstall созданный полностью на ботве 2 . не могу не где чет найти . за ранее всем огромное спасибо

Отправлено: 11:44, 31-10-2017 | #2241



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

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


Аватара для boss911

Alien


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

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


Цитата vk_k14m@vk:
[Files]
Source: "D:\Inno Setup\file.txt"; DestDir: "{app}"; Components: a b; »
Будет установлено, если выбрано A и B, либо выбрано A или B. Данное условие равнозначно "A or B". Условия для параметра Components и принцип работы, одинаковы для всех секций, где этот параметр может применяться, в том числе и для [Files].
Если уж совсем коротко.
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:05, 31-10-2017 | #2242


Аватара для vk_k14m@vk

Старожил


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

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


Цитата Iska:
Данное место следует понимать как «Параметры любых разделов, принимающих общие параметры, за исключением разделов [Types], [Components] и [Tasks]». То есть [Files] входит в этот перечень «all sections whose entries are separated into parameters, except [Types], [Components] and [Tasks]», и к нему в полной мере должно относиться (по крайней мере, в теории — я не проверял специально) использование «boolean expressions» в параметрах «Components» и «Tasks». »
Вот теперь все доходчиво и понятно. Спасибо

-------
Взялся отвечать, отвечай до конца!


Отправлено: 15:55, 31-10-2017 | #2243


Аватара для vk_k14m@vk

Старожил


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

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


Еще вопрос. Флаг ignoreversion. Как он работает, не совсем понял из того описания что к нему прилагается. Он же применим ко всем фалам? Или только к EXE?

Как я понял, если убрать этот флаг, то установщик будет записывать версии ВСЕХ файлов? А потом при повторной установке той же программы в ту же папку, установщик начнет сверять версии тех файлов что уже есть, с теми что устанавливает. И если они совпадают, то просто пропускать. А при несовпадении заменять. Я правильно говорю? Таким образом можно будет например восстанавливать поврежденные файлы приложения что б оно снова работало?

И как он вообще проверяет файлы? Как читает версию? Насколько файлы должны быть похожи что б он не заметил подмены? Например два текстовых файлы, в каждом по 100 символов, и во втором файле всего 1 символ отсутствует или изменен. Он увидит разницу?

-------
Взялся отвечать, отвечай до конца!


Последний раз редактировалось vk_k14m@vk, 04-11-2017 в 22:48.


Отправлено: 22:38, 04-11-2017 | #2244


Ветеран


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

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


vk_k14m@vk, номер версии применим к исполняемым файлам, к библиотекам, к определённого вида шрифтам. Номер версии может заноситься в ресурсы исполняемого файла/библиотеки разработчиком/компилятором при его создании.

Цитата vk_k14m@vk:
И как он вообще проверяет файлы? Как читает версию? »
Файлы — никак не проверяет. Для сравнения номеров версий может банально использовать функцию WinAPI GetFileVersionInfo function (Windows)/GetFileVersionInfoEx function (Windows).

Вообще пробежитесь по разделу Version Information (Windows), станет понятнее.

Цитата vk_k14m@vk:
Насколько файлы должны быть похожи что б он не заметил подмены? »
Без разницы. Содержимое файлов не проверяется никак.

Цитата vk_k14m@vk:
Например два текстовых файлы, в каждом по 100 символов, и во втором файле всего 1 символ отсутствует или изменен. Он увидит разницу? »
Текстовые файлы не содержат информации о версии. Содержимое же файлов и вовсе не имеет значения.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:34, 04-11-2017 | #2245


Аватара для vk_k14m@vk

Старожил


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

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


Iska, ясно. Но ответ все же не полный. Если установить приложение. А потом снова запустить установщик и снова попробовать установить приложение в ту же папку. Что он сделает с файлами которые уже есть? Пропустит, заменит или спрашивать будет? С флагом ignoreversion он заменит все. А что будет без него? На это ответ я не увидел...

З.Ы. И не подсовывайте мне инглиш сайты, знаете же что я не знаю язык. А значит и читать там ничего не буду.

-------
Взялся отвечать, отвечай до конца!


Отправлено: 01:47, 05-11-2017 | #2246


Ветеран


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

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


Цитата vk_k14m@vk:
А что будет без него? На это ответ я не увидел... »
Понял Вас. Откровенно говоря, даже не задумывался, поскольку не требовалось.

Inno Setup Knowledge Base:
Цитата:
PRB: Setup isn't replacing a particular file

Compare the version numbers on the existing file and the new file by right-clicking them in Windows Explorer and selecting Properties. By default, Inno Setup will not replace an existing file unless the existing file has no version info or has a lower version number.

If you're using a version of Windows prior to Windows 2000 and the new file appears to have a higher version number according to Windows Explorer, then it may be that the binary version number ("FILEVERSION") is not in sync with (e.g. lower than) the textual version number. The binary version numbers are what Inno Setup actually compares.

The /LOG switch available in Inno Setup 4.2.1 and later can be handy here. The log will show the binary version numbers of files and why certain files were not replaced.

If you want to force a file to be replaced regardless of its version number, add the ignoreversion flag to the [Files] section entry. This flag should only be used on files private to your application, never on shared system files.
Можете использовать Google Переводчик.

Цитата vk_k14m@vk:
З.Ы. И не подсовывайте мне инглиш сайты, знаете же что я не знаю язык. А значит и читать там ничего не буду. »
Прошу прощения, всего не упомнишь .

Отправлено: 02:37, 05-11-2017 | #2247


Аватара для vk_k14m@vk

Старожил


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

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


Iska
Цитата Iska:
By default, Inno Setup will not replace an existing file unless the existing file has no version info or has a lower version number. »
Цитата Гуглоперевод:
По умолчанию Inno Setup не заменит существующий файл, если существующий файл не имеет информации о версии или имеет более низкий номер версии.
Тоесть если есть файл с версией 1.0. А я устанавливаю 2.0, то первый файл заменен не будет? И это касается только тех файлов, которые имеют версию вообще. Файлы без версии заменять не будет.

Как то это глупо. Я имею ввиду про более низкий номер версии. Очевидно же что 2.0 более новый файл. Но он не будет установлен?

-------
Взялся отвечать, отвечай до конца!


Отправлено: 03:26, 05-11-2017 | #2248


Ветеран


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

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


Гуглопереводчик избрал худший вариант из невозможных:
Скрытый текст

Впрочем, и все остальные машинные переводчики «лажают» так же, пусть и с некоторыми отклонениями. И никакие «нейронные сети» тут не помогают.


Понимать «unless» следует как противопоставление, здесь — «за исключением следующих случаев». То есть, в случае отсутствия флага, получается так:
Цитата vk_k14m@vk:
Тоесть если есть файл с версией 1.0. А я устанавливаю 2.0, то первый файл заменен не будет? »
Будет. А вот если попытаетесь наоборот — то не будет.

Цитата vk_k14m@vk:
Файлы без версии заменять не будет. »
Будет.

Например, у нас есть два комплекта установки. В оба комплекта входят по паре одноимённых файлов, например, «docs.txt» и «app.exe», разного содержимого. Кроме того, «app.exe» имеет в первом комплекте версию, например, «1.0.0.0» и во втором — «1.5.0.0».
  • Мы производим установку первого комплекта, затем второго поверх первого. Оба файла из первоначального комплекта установки будут заменены файлами из второго комплекта: текстовый файл, как не имеющий версии, будет заменён безусловно, а версия нового, исполняемого файла из второго комплекта, более высокая.
  • Мы производим установку второго комплекта, затем первого поверх второго. Текстовый файл, как не имеющий версии, опять же, будет заменён безусловно, а исполняемый файл — нет, поскольку версия нового, исполняемого файла из первого комплекта, более низкая (а вот если задать флаг — будет заменён безусловно, без оглядки на версию).

Отправлено: 06:41, 05-11-2017 | #2249


Аватара для R.i.m.s.k.y.

Ветеран


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

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


скажите, пожалуйста, inno умеет переменные с плавающей точкой? нужно определить AR монитора и в зависимости от него выполнить некоторые действия

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!


Отправлено: 07:44, 05-11-2017 | #2250



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 8]

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты 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




 
Переход