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

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

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

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

Ветеран


Contributor


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


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

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


Изменения
Автор: El Sanchez
Дата: 16-02-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] - Скачать;


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

Отправлено: 19:06, 28-03-2013

 

Аватара для Debugger

Ветеран


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

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


Планирую сделать перепаковку плагина к Photoshop. Плагин идет в двух вариантах - 32 и 64 бит. Хочу чтобы во время инсталляции скрипт определял битность операционной системы и в зависимости от этого в окне выбора компонентов предлагал либо на выбор оба варианта установки, в случае 64-битной ОС, либо в случае 32-битной, либо вообще не предлагал бы выбор либо галочка 32 бита была бы недоступна. Вопрос - возможно ли сделать это без необходимости писать большой и нудный код в секции [code]? И какой инсталлятор в этоп плане гибче - Inno Setup или NSIS?

Отправлено: 06:30, 07-02-2014 | #2151



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

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


Аватара для Gnom_aka_Lexander

Ветеран


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

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


Debugger, Check: IsWin64 для 64 и Check: not IsWin64 для х32. по сути является булевой функцией, что позволяет использовать ее во всех секциях, в тех местах, где требуется ответ в виде да-нет на вопрос - Система х64?
Пример использования Check из справки:

читать дальше »
Существует один необязательный параметр, поддерживаемый всеми секциями, содержащие параметры. Это:
Check
Имя проверочной функции, которая определяет, должен быть применен параметр или нет. Эта функция должна быть либо описана в секции [Сode], либо быть встроенной функцией.

Кроме простого имени можно использовать логические выражения. Для справки обратитесь к разделу Параметры секций [Components] и [Tasks].

Для каждой check-функции можно добавить список параметров, разделенных запятыми, которые инсталлятор должен предоставить check-функции. Допустимые типы параметров: строковый (String), целочисленный (Integer) и логический (Boolean). Строковые параметры могут содержать константы. These constants will not be automatically expanded. If you want to pass an expanded constant, существует одна встроенная функция, которую можно добавлять в список параметров: это ExpandConstant.

Например:
Код: Выделить весь код
[Files]
Source: "MYPROG.EXE"; DestDir: "{app}"; Check: MyProgCheckSource: "A\MYFILE.TXT"; DestDir: "{app}"; Check: MyDirCheck(ExpandConstant('{app}\A'))
Source: "B\MYFILE.TXT"; DestDir: "{app}"; Check: DirExists(ExpandConstant('{app}\B'))
Все check-функции должны возвращать значение типа Boolean. Если check-функция (или логическое выражение) возвращает True, значение будет применено, иначе будет пропущено.

Инсталлятор может вызывать каждую check-функцию по нескольку раз, даже если только одно значение использует эту check-функцию. Если ваша функция выполняет длинный сегмент кода, можно оптимизировать его - выполнив его однажды, можно присвоить полученное значение глобальной переменной.

Check-функция не вызывается для значения, для которого инсталлятор уже определил, что не будет его применять.

Пример секции [Сode], содержащей проверочные функции (check-функции). Функция DirExists является DirExists встроенной функцией, поэтому не описана в секции [Сode].
Код: Выделить весь код
[Сode]
var
  MyProgChecked: Boolean;
  MyProgCheckResult: Boolean;

function MyProgCheck(): Boolean;
begin
  if not MyProgChecked then
  begin
    MyProgCheckResult := MsgBox('Do you want to install MyProg.exe to ' + ExtractFilePath(CurrentFileName) + '?', mbConfirmation, MB_YESNO) = idYes;    MyProgChecked := True;
  end;
  Result := MyProgCheckResult;
end;

function MyDirCheck(DirName: String): Boolean;
begin
  Result := DirExists(DirName);
end;

тут проверка собственной функции, тебе-же нужна встроенная IsWin64, поэтому в коде писать вообще ничего не нужно. смотри пример для секции файлов, аналогично это делается для компонент и задач.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.

Это сообщение посчитали полезным следующие участники:

Отправлено: 07:22, 07-02-2014 | #2152


Аватара для Ivan_009

Ветеран


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

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


Как добавить сглаживание шрифта через код как сдесь, чтобы на всех системах было одинаковое отображение или это фотошоп не пойму...

Подскажите пожалуйста...

P.S : Проверял на Windows 7 и Windows XP отображается одинаково...

Последний раз редактировалось Ivan_009, 27-02-2014 в 22:03.


Отправлено: 10:07, 07-02-2014 | #2153


Аватара для diman_21Ru

Старожил


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

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


Как Объединить скрипт с файлом bin в один

Отправлено: 11:35, 07-02-2014 | #2154


Аватара для habib2302

Ветеран


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

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


saurn,
а можно с .png'ешной картинкой через ботву

-------
Помог? От "Полезное сообщение" не откажусь!!!


Отправлено: 11:40, 07-02-2014 | #2155


Аватара для Ivan_009

Ветеран


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

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


Цитата diman_21Ru:
Как Объединить скрипт с файлом bin в один »
Используй для этих целей IsDone. И справочку незабудь почитать...

Отправлено: 11:42, 07-02-2014 | #2156


Ветеран


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

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


Вложения
Тип файла: 7z _iss.7z
(23.2 Kb, 10 просмотров)

Цитата habib2302:
а можно с .png'ешной картинкой через ботву »
Архив с примером во вложении.

Цитата diman_21Ru:
Как Объединить скрипт с файлом bin в один »
Удалить из секции [Setup] директиву DiskSpanning, или задать ей значение no

Последний раз редактировалось saurn, 07-02-2014 в 12:38.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:28, 07-02-2014 | #2157


Ветеран


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

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


Друзья, подскажите, пожалуйста, как можно в скрипте реализовать следующее в режиме verysilent:

если разрядность ОСи x86, то отменяем установку и в КОНСОЛЬ возвращаем какое-либо сообщение с кодом.


Пример того, что я хочу увидеть при запуске собранного инсталлятора Inno из-под CMD на 86-разрядной ОС:
Код: Выделить весь код
C:\Users\The_Immortal>program.exe
Unsupported OS (x86)

C:\Users\The_Immortal>

Отправлено: 13:49, 07-02-2014 | #2158


Аватара для diman_21Ru

Старожил


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

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


Как можно растянуть окно для текста компонентов на весь экран ?
Искал искал не как не нашел где именно менять ,помогите пожалуйста

Последний раз редактировалось diman_21Ru, 08-02-2014 в 20:37.


Отправлено: 16:10, 07-02-2014 | #2159


Аватара для Ivan_009

Ветеран


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

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


Как добавить в начале скрипта проверку на Расширенную версию Inno Setup Compiler...

Отправлено: 20:18, 07-02-2014 | #2160



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

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

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




 
Переход