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

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

 

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

Старожил


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

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


Цитата aidynchik:
А что дальше делать, как заставить теперь сработать эту функцию? »
Переименуйте функцию OnNextButtonClick на NextButtonClick.

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

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

Отправлено: 11:28, 28-04-2015 | #551



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

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


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


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

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


спасибо!
теперь не подскажете - как все-таки сделать, если программа уже установлена, то обновить ТОЛЬКО лишь екзешник а не все файлы с папки, и запустить второй exe-файл, который будет обновлять БД?

Отправлено: 14:04, 28-04-2015 | #552


Аватара для Dodakaedr

Ветеран


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

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


Цитата aidynchik:
теперь не подскажете - как все-таки сделать, если программа уже установлена, то обновить ТОЛЬКО лишь екзешник а не все файлы с папки »
Для обновления файлов используйте флаг onlyifdoesntexist(установить если файл отсутствует) а для exe-шника ignoreversion(игнорировать, заменить)
Код: Выделить весь код
[Files]
Source: 1.dll; DestDir: {app}; Flags: onlyifdoesntexist
Source: help.chm; DestDir: {app}; Flags: onlyifdoesntexist
Source: MyProg.exe; DestDir: {app}; Flags: ignoreversion
Цитата aidynchik:
и запустить второй exe-файл, который будет обновлять БД? »
А для этой задачи есть секция Run, в справке все подробно описывается.

-------
Inno Setup 5 Ultra Unicode


Отправлено: 09:12, 29-04-2015 | #553


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


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

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


привет!

Как сделать зависимость инсталяции компонентов от версии системы (будет один RadioButton будет активный - MS SQL Server 2008 или 2012, или оба - если версия виндовса поддерживает обе программы) ?

Win < 6.0 - только 2008
Win >6.1 - только 2012
Win = 6.0 or 6.1 - 2008 и 2012

Благодарю!!

Отправлено: 10:20, 29-04-2015 | #554


Аватара для Dodakaedr

Ветеран


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

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


Как в inno сгенерировать случайное число на 10 цифр?

-------
Inno Setup 5 Ultra Unicode

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

Отправлено: 10:23, 29-04-2015 | #555


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


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

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


я извиняюсь, но почему-то этот код не работает
ставлю версию 1.0.0.5 на версию 1.0.0.4 - пишет что новейшая версия уже установлена...
Код: Выделить весь код
[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{1419C2B5-9C27-42DE-9424-9EB8FEEF4C3B}
AppName=MyApp
AppVersion=1.0.0.5
;AppVerName=MyApp 1.0.0.5
AppPublisher=Студия "Автоматизация ИП"
AppPublisherURL=http://MyApp.kz/
AppSupportURL=http://MyApp.kz/
AppUpdatesURL=http://MyApp.kz/
DefaultDirName={pf}\MyApp
DefaultGroupName=MyApp
LicenseFile=C:\CVSWork\MyAppFB\MyApp32\license.txt
OutputDir=C:\CVSWork\MyAppFB\MyApp32
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes

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

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1

[Files]
Source: "C:\CVSWork\MyAppFB\MyApp32\MyApp.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\CVSWork\MyAppFB\MyApp32\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files


#define VersionMajor
#define VersionMinor
#define VersionRevision
#define VersionBuild
#expr ParseVersion("MyApp.exe", VersionMajor, VersionMinor, VersionRevision, VersionBuild)
#define VersionMS ((VersionMajor << 16) + VersionMinor)
#define VersionLS ((VersionRevision << 16) + VersionBuild)

{Code}
type
  VersionState = (vsNotInstalled, vsOlderInstalled, vsSameInstalled, vsNewerInstalled);

function GetVersionState(): VersionState;
var
  ExePath: String;
  VersionMS, VersionLS: Cardinal;
  VersionMSs : Cardinal;
begin
  ExePath := ExpandConstant('{app}\MyApp.exe');
  if GetVersionNumbers(ExePath, VersionMS, VersionLS) then begin
    if (VersionMS < {#VersionMS}) or ((VersionMS = {#VersionMS}) and (VersionLS < {#VersionLS})) then begin
      Result := vsOlderInstalled;
    end else if (VersionMS > {#VersionMS}) or ((VersionMS = {#VersionMS}) and (VersionLS > {#VersionLS})) then begin
      Result := vsNewerInstalled;
    end else begin
      Result := vsSameInstalled;
    end;
  end else begin
    Result := vsNotInstalled;
  end;
end;

function NextButtonClick(CurPageId: Integer): Boolean;
var VersState : VersionState;
begin
  Result := True;
  if CurPageId = wpSelectDir then begin
    VersState := GetVersionState();
    if (VersState = vsNewerInstalled) or (VersState = vsSameInstalled) then begin
      MsgBox('Последняя версия программного продукта уже установлена. Установка будет отменена.', mbConfirmation, MB_OK);
      Result := False;
      WizardForm.CancelButton.OnClick(WizardForm.CancelButton);
    end;
  end;
end;

procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
begin
    Confirm := false;
end;

[Icons]
Name: "{group}\MyApp"; Filename: "{app}\MyApp.exe"
Name: "{commondesktop}\MyApp"; Filename: "{app}\MyApp.exe"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\MyApp"; Filename: "{app}\MyApp.exe"; Tasks: quicklaunchicon

[Run]
Filename: "{app}\MyApp.exe"; Description: "{cm:LaunchProgram,MyApp}"; Flags: nowait postinstall skipifsilent
что я написал не так?

Отправлено: 13:07, 29-04-2015 | #556


Аватара для OldGamer

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


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

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


Help! В конце установки Visual C++ выбивает ошибку (при этом компоненты в систему устанавливаются):

http://i58.fastpic.ru/big/2015/0429/...974a13031c.png

С чем эта проблема связана?
(скину скрипт при необходимости)

Последний раз редактировалось OldGamer, 29-04-2015 в 20:13.


Отправлено: 19:31, 29-04-2015 | #557


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

Ветеран


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

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


aidynchik, у тебя переменные с версиями обнулены
#define VersionMajor
#define VersionMinor
#define VersionRevision
#define VersionBuild


OldGamer, залил на говнохостинг - сиди жди у моря погоды

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


Отправлено: 19:46, 29-04-2015 | #558


Аватара для OldGamer

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


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

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


R.i.m.s.k.y., заменил ссылку.

Отправлено: 20:14, 29-04-2015 | #559


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

Ветеран


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

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


OldGamer, потому что в скрипте обращаешься к несуществующему элементу

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


Отправлено: 20:22, 29-04-2015 | #560



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




 
Переход