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

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

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

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

Ветеран


Contributor


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


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

Профиль | Отправить 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

 

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

Ветеран


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

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


Цитата ZVSRus:
А какие приложения подразумеваются, и какая требуется проверка, на запуск или на установку, или на то и другое? »
изначально желалось
Цитата vk_k14m@vk:
Привет народ, снова я. Я вам еще не надоел?
Снова нужен ответ. С помощью секции [Run] можно запустить любое приложение после распаковки всех файлов. А можно ли тоже самое провернуть ДО распаковки?
Суть в чем, если помните моя инсталляция распаковывает "распакованные" файлы, и в конце их запаковывает. И так же установка выборочная. Если кто-то установит "легкую" версию, а потом захочет до-установить что-то. То ему нужно будет полностью удалять приложение и ставить с нуля. Так как инсталляция распакует нужные файлы а в конце снова их запакует чем создаст дубликаты архивов (так уже работает тот пакер).
По этому при повторной установке перед распаковкой нужно запустить файл (батник) который бы снова распаковал установленные ранее архивы. Как это сделать? Это получается что этот батник должен сначала распаковаться, потом прекратить установку остальных файлов, и только после его закрытия распаковка должна продолжиться. И это должно происходить только если программа уже была ранее установлена. Это не слишком сложно сделать?
З.Ы. Кто-то сталкивался с подобными запаковывающими/распаковывающими приложениями которые через консоль работают? Может подскажите какие могут быть аргументы что б приложение не создавало дубликат уже существующего архива, а заменяло его? В описании программы нет вообще никаких данных о работе через консоль. Только "кинуть на него архива для распаковки" и "кинуть папку для запаковки". »
но не шмоглось
как ни советовали

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


Отправлено: 14:31, 03-10-2017 | #2151



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

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


Аватара для ZVSRus

Старожил


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

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


R.i.m.s.k.y. Извиняюсь, с чего началась тема подзабыл.
"распакованные" файлы, запакованные файлы, батник, консоль. Только "кинуть на него архива для распаковки" и "кинуть папку для запаковки" - Тяжело сразу понять данное ассорти. Я понимаю это игра. Мне подумалось что одни файлы нужно распаковать через один чекбокс, другие через другой чекбокс, сделать проверку на данные чекбоксы, ну и на запуск установленного исполняемого файла.
Такие темы нужно более детально расписывать.

-------
Inno Setup 5.5.1.ee2 Ultra ANSI Unicode


Отправлено: 14:53, 03-10-2017 | #2152


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

Ветеран


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

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


ZVSRus, уот энто уот фсио на энтой странице
я пыталсо F1 но не алё

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


Отправлено: 15:08, 03-10-2017 | #2153


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

Старожил


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

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


Цитата ZVSRus:
Извиняюсь, с чего началась тема подзабыл.
"распакованные" файлы, запакованные файлы, батник, консоль. Только "кинуть на него архива для распаковки" и "кинуть папку для запаковки" - Тяжело сразу понять данное ассорти. Я понимаю это игра. Мне подумалось что одни файлы нужно распаковать через один чекбокс, другие через другой чекбокс, сделать проверку на данные чекбоксы, ну и на запуск установленного исполняемого файла.
Такие темы нужно более детально расписывать. »
С чего все началось. Есть игра. Она хранит свои файлы в архивах *.рр. Есть выборочная установка которая должна на выбор ставить разные файлы в этих архивах. Архивы довольно много весит, и запаковывать каждый вариант одного архива дорого в плане места. По этому я принял решение "запаковывать распакованные" *.рр архивы, а потом, в конце установки все их запаковывать через *.bat файл.

Так установка прекрасно работает. Но если кто-то установил чистый вариант игры, а потом решит что-то добавить? Тот батник уже не будет правильно работать, и придется полностью удалять игру и ставить заново. По этому нужен второй батник, который перед началом установки будет делать обратное действие - распаковывать эти *.рр архивы что б их можно было дополнить, и опять в конце установки запаковать.

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

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


Отправлено: 16:43, 03-10-2017 | #2154


Аватара для ZVSRus

Старожил


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

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


vk_k14m@vk
Это полный пи....! Набор ахинейских фраз и предложений. Вы хоть понимаете что вам на 3 страницы писанины никто не может ответить, потому что никто толком не может вас понять до конца. На 213 странице где ваш скрип, это каша, Check: AA2Decrypt_unpack; чековая проверка пишется в конце строки (я вставляю данную проверку перед флагами). В секции [Files]
все строки должны начинаться с Source: (во всяком случае чековую проверку в начале строки никогда не встречал). У вас есть чековая функция Function AA2Decrypt_unpack():boolean;, а где сам чекбокс, или что у вас там, я нигде не нашел то, на что ссылается данная проверка.
Artificial Academy 2* это так и должно быть, или все же между двойкой и звездочкой должна стоять наклонная черта.
Source: "D:\Inno Setup\Installer\2a [AA2][Uncensor][3D MK-III][FA][v2.0][Various]\Artificial Academy 2*"; - почти все строки так.
Я понял только одно: У вас 2 батника, один распаковывается во временную папку и от туда через код запускается. DestDir: "{tmp}";
Source: "D:\Inno Setup\Installer\0 Delete after install\AA2Decrypt_unpack.bat"; DestDir: "{tmp}"; BeforeInstall: ChangeCaption('AA2Decrypt_unpack.bat'); AfterInstall: install_this_file; Check: AA2Decrypt_unpack;
Второй батник в конце установки через секцию [Run] что то упаковывает. Все остальные папки что в секции [Files] через те или иные компоненты что в секции [Components] устанавливаются в директорию DefaultDirName=D:\Games\{#MyAppName}. Теперь вопрос, что нужно запускать или устанавливать через чекбокс или через что другое?
Объясните подробно но кратко, своими простыми словами.

-------
Inno Setup 5.5.1.ee2 Ultra ANSI Unicode

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

Отправлено: 18:11, 03-10-2017 | #2155


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

Старожил


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

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


ZVSRus, как раз это

Function Уже_установленное_приложение():boolean;
begin
if это_приложение_уже_установлено then Result := True else Result := False;
end;

я удалил. По тому что оно не работает. И нет объяснений как оно должно работать. А между двойкой и звездочкой должна стоять наклонная черта. Но я их специально по убирал что б протестировать работу установщика, и не ждать 8 часов пока все запакуется.

Check: у меня в начале по тому что я скопировал ее из этого поста.
Цитата R.i.m.s.k.y.:
это можно сделать через [Files] BeforeInstall, CurStepChanged, CurPageChanged и NextButtonClick
Я обычно делаю так

Код: Выделить весь код
[Files]
Check: Уже_установленное_приложение; Source: сразу_извлекается_и_запускается_этот_файл.exe; DestDir: {tmp}; BeforeInstall: ChangeCaption('Установка этого файла'); AfterInstall: install_this_file; Flags: ignoreversion recursesubdirs createallsubdirs; 
...
Source: Твои файлы...
[Сode]
procedure install_this_file();
var res:integer; file, path : string;
begin
 file := ExpandConstant('{tmp}\сразу_извлекается_и_запускается_этот_файл.exe'); path := ExpandConstant('{tmp}');
 if FileExists(file) then Exec(file, ' параметры',path,SW_SHOW,ewWaitUntilTerminated,res) else MsgBox('Файл') + ' ' + file + #13#10 + 'не найден'), mbInformation, MB_OK);
end;
Function Уже_установленное_приложение():boolean;
begin
 if это_приложение_уже_установлено then Result := True else Result := False;
end;
»
И как можно заметить, там Check: в начале.

Сейчас у меня все выглядит так:
Скрытый текст
; Этот сценарий создан с помощью Мастера Inno Setup.
; ОБРАТИТЕСЬ К СПРАВОЧНОЙ ДОКУМЕНТАЦИИ, ЧТОБЫ ИСПОЛЬЗОВАТЬ ВСЕ ВОЗМОЖНОСТИ INNO SETUP!

#define MyAppName "Artificial Academy 2"
#define MyAppVersion "2.0.1"
#define MyAppPublisher "Illusion"
#define MyAppExeName "AA2Play.exe"

[Setup]
; Примечание: Значение AppId является уникальным идентификатором для этого приложения.
; Не используйте одно и тоже значение AppId для разных приложений.
; (Для создания нового значения GUID, выберите в меню "Инструменты" пункт "Создать GUID".)
AppId={{37EDDB6D-1F9B-474F-8FF4-57CC8277B1A7}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
DefaultDirName=D:\Games\{#MyAppName}
DefaultGroupName={#MyAppName}
AllowNoIcons=yes
OutputDir=D:\Inno Setup
OutputBaseFilename=setup
SetupIconFile=D:\Inno Setup\Installer\ico.ico
WizardImageFile=D:\Inno Setup\Installer\WizardImage.bmp
WizardSmallImageFile=D:\Inno Setup\Installer\WizardSmallImage.bmp
Compression=lzma2/ultra64
SolidCompression=yes
DiskSpanning=yes
DiskSliceSize=1536000000

[Languages]
Name: "russian"; MessagesFile: "compiler:\Languages\Russian.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Components]
Name: "Main"; Description: "Artificial Academy 2"; Types: full compact custom; Flags: fixed
Name: "Anticensor"; Description: "Антицензор"; Types: custom
Name: "Anticensor\MKIII"; Description: "МКIII"; Types: custom; Flags: exclusive
Name: "Anticensor\MKIII\clothes"; Description: "Пак одежды для MKIII анцензора"; Types: custom; Flags: exclusive
Name: "Anticensor\MKIII\clothes\garter_belt"; Description: "Аддон на подвязки"; Types: custom;
Name: "Anticensor\SVII"; Description: "SVII"; Types: custom; Flags: exclusive
Name: "Anticensor\SVII\clothes"; Description: "Пак одежды для SVII анцензора"; Types: custom; Flags: exclusive
Name: "Anticensor\SVII\clothes\texture"; Description: "Пак текстур для одежды"; Types: custom;
Name: "Anticensor\SVII\clothes\extra_a"; Description: "Extra A пак одежды для SVII анцензора"; Types: custom;
Name: "Anticensor\SVII\clothes\extra_a\texture"; Description: "Пак тестур для одежды Extra A"; Types: custom;
Name: "Anticensor\SVII\clothes\extra_h5"; Description: "Extra H5 пак одежды для SVII анцензора"; Types: custom;
Name: "Anticensor\SVII\clothes\extra_h5\texture"; Description: "Пак тестур для одежды Extra H5"; Types: custom;
Name: "Anticensor\SVII\clothes\garter_belt"; Description: "Аддон на подвязки"; Types: custom;
Name: "Hairpack"; Description: "Пак дополнительных причесок"; Types: custom;
Name: "Override"; Description: "Пак дополнительных лиц и причесок"; Types: custom;
Name: "Russification"; Description: "Русификатор"; Types: custom;
Name: "Russification\Hlimitation_yes"; Description: "Ограничение H-сцен"; Types: custom; Flags: exclusive
Name: "Russification\Hlimitation_no"; Description: "Без аграничения"; Types: custom; Flags: exclusive
Name: "ProgramFiles"; Description: "Дополнительные приложения"; Types: custom;
Name: "ProgramFiles\AA2Install"; Description: "AA2Install"; Types: custom;
Name: "ProgramFiles\ReiEditAA2"; Description: "ReiEditAA2"; Types: custom;
Name: "ProgramFiles\AA2Face"; Description: "AA2Face"; Types: custom;

[Files]
Source: "D:\Inno Setup\Installer\0 Delete after install\AA2Decrypt_unpack.bat"; DestDir: "{app}"; BeforeInstall: ChangeCaption('Установка этого файла'); AfterInstall: install_this_file; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "D:\Inno Setup\Installer\1 Artificial Academy 2\Artificial Academy 2\*"; DestDir: "{app}"; Components: Main; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension
Source: "D:\Inno Setup\Installer\2a [AA2][Uncensor][3D MK-III][FA][v2.0][Various]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\MKIII; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2a1 [AA2][HEXA Clothing Collection][MK-III][v5.2][Various]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\MKIII\clothes; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2a2 [AA2][HEXACC][Garter Belt][v1.5][Various]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\MKIII\clothes\garter_belt; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2b [AA2][SVII Uncensor][3D Pubes][All-In-One][v1.6]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\SVII; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2b1 [AA2][SVII Clothing Collection][3D Pubes][v5.0]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\SVII\clothes; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2b1a SVII Clothing Collection - Texture Pack v5.0\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\SVII\clothes\texture; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2b2 [AA2][SVII Clothing Collection][Extra A][3D Pubes][v1.2.1]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\SVII\clothes\extra_a; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2b2a SVII Clothing Collection - Extra A - Texture Pack v1.2\Artificial Academy \2*"; DestDir: "{app}"; Components: Anticensor\SVII\clothes\extra_a\texture; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2b3 [AA2][SVII Clothing Collection][Extra H5][Uncensored][v1.0]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\SVII\clothes\extra_h5; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2b3a SVII Clothing Collection - Extra H5 - Texture Pack v1.0\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\SVII\clothes\extra_h5\texture; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\2b4 [AA2][SVII Clothing Collection][Garter Belt][v1.5]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Anticensor\SVII\clothes\garter_belt; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\3 [AA2][HEXA Hairpack][RE][v3.0][Various]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Hairpack; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\4 [AA2][HEXA Override Collection][v3.5][Various]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Override; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\5a [AA2][Interface][Russian user interface v.1][AVA]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Russification; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\5b [AA2][Interface][Russian user interface v.5][AVA]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Russification and Anticensor; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\5ba [AA2][Interface][Russian user interface v.5][AVA]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Russification and Anticensor\MKIII; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\5bb [AA2][Interface][Russian user interface v.5][AVA]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Russification and Anticensor\SVII; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\5bxa [AA2][Interface][Russian user interface v.5][AVA]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Russification\Hlimitation_yes and Anticensor; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\5bxb [AA2][Interface][Russian user interface v.5][AVA]\Artificial Academy 2\*"; DestDir: "{app}"; Components: Russification\Himitation_no and Anticensor; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\AA2Install v7 b3.1\Artificial Academy 2\*"; DestDir: "{app}"; Components: ProgramFiles\AA2Install; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\ReiEditAA2 0.9.5.3b\Artificial Academy 2\*"; DestDir: "{app}"; Components: ProgramFiles\ReiEditAA2; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\SVII Clothing Collection - ReiEdit v5.0\Artificial Academy 2\*"; DestDir: "{app}"; Components: ProgramFiles\ReiEditAA2 and Anticensor\SVII; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\HEXA Override Collection - ReiEdit\Artificial Academy 2\*"; DestDir: "{app}"; Components: ProgramFiles\ReiEditAA2 and Override; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\AA2Face 1.4.2\Artificial Academy 2\*"; DestDir: "{app}"; Components: ProgramFiles\AA2Face; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension solidbreak
Source: "D:\Inno Setup\Installer\0 Delete after install\Artificial Academy 2\*"; DestDir: "{app}"; Components: Main; Flags: ignoreversion recursesubdirs createallsubdirs deleteafterinstall solidbreak
; Примечание: Не используйте' флаги "ignoreversion" для общих системных файлов.

[code]
procedure install_this_file();
var res:integer; file, path : string;
begin
file := ExpandConstant('{app}\AA2Decrypt_unpack.bat'); path := ExpandConstant('{app}');
if FileExists(file) then Exec(file, 'параметры',path,SW_SHOW,ewWaitUntilTerminated,res) else MsgBox('Файл' + ' ' + file + #13#10 + 'не найден', mbInformation, MB_OK);
end;

procedure ChangeCaption(str: string);
begin
WizardForm.StatusLabel.Caption:= str;
end;

[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon

[Run]
Filename: "{app}\data\AA2Decrypt.bat"; WorkingDir: {app}/data; Description: Упаковка папок...; Flags: waituntilterminated

[UninstallDelete]
Name: {app}\data\*.pp; Type: files

AA2Decrypt.bat - должен всегда запускаться после распаковки всех файлов.
AA2Decrypt_unpack.bat - хотелось бы что б запускался только при повторной установке. Тоесть я установил приложение. А потом снова запускаю установщик, и в самом начале извлекается и запускается самый первый файл из списка - AA2Decrypt_unpack.bat. Пока он работает дальнейшее извлечение файлов не идет. И только когда этот батник закрывается, установка (извлечение) продолжится в обычном режиме. Это я уже все подробно расписывал...

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


Отправлено: 18:53, 03-10-2017 | #2156


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

Ветеран


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

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


Цитата vk_k14m@vk:
И нет объяснений как оно должно работать »
ничоси!
а это что?

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

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

Отправлено: 20:28, 03-10-2017 | #2157


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

Старожил


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

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


Цитата R.i.m.s.k.y.:
ничоси!
а это что? »
Функции с именем Уже_установленное_приложение быть не может. InnoSetup ругается на букву У. Так что твой код уже не правильный.

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


Отправлено: 20:40, 03-10-2017 | #2158


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

Ветеран


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

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


Цитата vk_k14m@vk:
Функции с именем Уже_установленное_приложение быть не может. »
молодец, половину логической цепочки догадался, вторая половина - подставить собственное название и собственную проверку вместо это_приложение_уже_установлено
Скрытый текст
ну ясен-красен что это пример с аллегорией

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

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

Отправлено: 21:08, 03-10-2017 | #2159


Аватара для ZVSRus

Старожил


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

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


vk_k14m@vk
Загляни в личку.

R.i.m.s.k.y.
Извиняюсь, но вы тоже не правы, человеку нужно готовое решение.
Вы же видите что ему в не догадку поменять это_приложение_уже_установлено например на if AA2Decrypt_unpack then Result := True else Result := False;, придет время и он будет подсказывать.

-------
Inno Setup 5.5.1.ee2 Ultra ANSI Unicode


Последний раз редактировалось ZVSRus, 03-10-2017 в 21:22.


Отправлено: 21:15, 03-10-2017 | #2160



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




 
Переход