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

Компьютерный форум 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

 

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

Ветеран


Contributor


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

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


Цитата AlekseyPopovv:
А через procedure CurUninstallStepChanged как? »
AlekseyPopovv,
Скрытый текст

Код: Выделить весь код
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
var
    CaptureFolder: String;
begin
    case CurUninstallStep of
        usPostUninstall:
            begin
                CaptureFolder := GetIniString('Splash', 'CaptureFolder', '', 'где-то там\file.ini');
                if DirExists(CaptureFolder) and (MsgBox('Удалить папку?', mbConfirmation, MB_YESNO) = IDYES) then
                    DelTree(CaptureFolder, True, True, True);
            end;
    end;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:26, 09-06-2015 | #681



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

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


Аватара для habib2302

Ветеран


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

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


Доброе время суток. как вам объяснить!? Короче. Как сделать проверку на использование команды /DIR?
Т.е инсталл запущенный с командой /DIR, то приложение указанное в разделе [Run] должно запускаться с командой (Filename: {tmp}\nsis.exe; Parameters: /D={app};)
если инсталл запущенный без команды /DIR, то приложение должно запускаться без команды (Filename: {tmp}\nsis.exe

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


Отправлено: 21:50, 09-06-2015 | #682


Аватара для kotyarko@fb

Старожил


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

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


habib2302, по идеи, должно работать..:
Код: Выделить весь код
[Run]
Filename: {tmp}\nsis.exe; Parameters: "/D={app}"; Check: DIRParamExists();
Filename: {tmp}\nsis.exe; Check: not DIRParamExists();

[*Code]
Function DIRParamExists(): Boolean;
var
 I: Integer;
begin
 for I := 1 to ParamCount do
  case (Uppercase(ParamStr(I)) = '/DIR') of
   True: Result := True
   False: Result := False;
  end;
end;
Но можно сделать и красивее, если в параметре "Parameters" (тавтология она такая) использовать команду {code:..} (если её там можно использовать вообще, точно не знаю).

-------
http://forum.worldoftanks.ru/topic/1429925-/
Исходник моего установщика: https://bitbucket.org/Kotyarko_O/kmp


Последний раз редактировалось kotyarko@fb, 09-06-2015 в 23:11.


Отправлено: 23:05, 09-06-2015 | #683


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

Ветеран


Contributor


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

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


Цитата kotyarko@fb:
по идеи, должно работать »
kotyarko@fb, не будет. Если /DIR не последний параметр, то DIRParamExists вернет False. Надо так:
Скрытый текст

Код: Выделить весь код
[Run]
Filename: {tmp}\nsis.exe; Parameters: "{code:GetDIRParam|/D=""{app}""}"

[code]
//////////////////////////////////////////////////
function GetDIRParam(const Param: String): String;
begin
    if ExpandConstant('{param:DIR|}') <> '' then
        Result := Param;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 09:32, 10-06-2015 | #684


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


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

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


Парни, такая ситация. Хочу сделать чтобы у пользователя был выбор, устанавливать ли мод, или нет, вроде чекбокса. Мод в архиве. Если чекбокс нажат, то после основной установки пойдет установка мода, если нет, то и суда нет.
Как такое можно реализовать?

Отправлено: 18:40, 10-06-2015 | #685


Пользователь


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

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


Парни, проблема. Загрузил Фоновое изображение на инсталлятор через ботву. Сделал WizardForm.Innernotebook.hide и WizardForm.OuterNotebook.hide, чтобы изображение было видным, но эти параметры скрывают слова. Что надо сделать чтоб были слова и фоновая картинка одновременно. Плиз ответьте.

Отправлено: 00:03, 12-06-2015 | #686


Пользователь


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

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


Okta_333, if Чекбокс.Checked then (а дальше распаковка архива. если используешь isdone, то читай справку)
PlanktoN, Parent:= WizardForm; и CurPageChanges (посм как правильно пишется) скрытие и показ элементов реализовывать.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:33, 12-06-2015 | #687


Аватара для kotyarko@fb

Старожил


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

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


А можно имеющееся в программе изображение (загруженное через [Files]) открыть в стандартном виндовом "средстве просмотра фотографий"?

upd: разобрался.

-------
http://forum.worldoftanks.ru/topic/1429925-/
Исходник моего установщика: https://bitbucket.org/Kotyarko_O/kmp


Последний раз редактировалось kotyarko@fb, 13-06-2015 в 13:09.


Отправлено: 00:16, 13-06-2015 | #688


Аватара для AlekseyPopovv

Старожил


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

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


Мне нужно узнать версию программы из реестра:
[HKEY_LOCAL_MACHINE\SOFTWARE\MyPrograms\Program]
"Version"="13.06.2015"

И сделать чтобы было сообщение в окошке "Версия такая такая". Или если этого параметра нет в реестре то тогда сообщение "Версия не установлена".
procedure ProgramButtonClick(Sender: TObject);
var
Hislo: String;
begin
if RegQueryStringValue(HKLM, 'SOFTWARE\MyPrograms\Program', 'Version', Hislo) and (Hislo <> '') then
if MsgBox('Версия Hislo.',mbInformation, mb_ok) = IDok then
end;

Отправлено: 09:57, 13-06-2015 | #689


Аватара для kotyarko@fb

Старожил


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

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


AlekseyPopovv,
Код: Выделить весь код
procedure ProgramButtonClick(Sender: TObject);
var
 Hislo: String;
begin
 if RegQueryStringValue(HKLM, 'SOFTWARE\MyPrograms\Program', 'Version', Hislo) and (Hislo <> '') then
  MsgBox('Версия: ' + Hislo + '.', mbInformation, mb_ok)
 else
  MsgBox('Версия не установлена.', mbInformation, mb_ok);
end;

-------
http://forum.worldoftanks.ru/topic/1429925-/
Исходник моего установщика: https://bitbucket.org/Kotyarko_O/kmp

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

Отправлено: 11:50, 13-06-2015 | #690



Компьютерный форум 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




 
Переход