Имя пользователя:
Пароль:
 | Правила  

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

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

Аватара для 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] - Скачать;

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



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

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

Отправлено: 11:48, 10-03-2014

 

Аватара для audiofeel

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


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

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


если игра устанавливается по умолчанию в C:\GameXP\AccessPoint\installed\World of Dragons\, а файл запуска "лежит" по пути
C:\GameXP\AccessPoint\installed\World of Dragons\WOD.exe, то и "рабочая папка у него находится там же = C:\GameXP\AccessPoint\installed\World of Dragons
а что у вас указанно в #define {#MyAppName} ?????
читать дальше »
; Ñêðèïò ñîçäàí ÷åðåç Ìàñòåð Inno Setup Script.
; ÈÑÏÎËÜÇÓÉÒÅ ÄÎÊÓÌÅÍÒÀÖÈÞ ÄËß ÏÎÄÐÎÁÍÎÑÒÅÉ ÈÑÏÎËÜÇÎÂÀÍÈß INNO SETUP!

#define MyAppName "World of Dragons"
#define MyAppVersion "1.5"
#define MyAppPublisher "GameXP"
#define MyAppURL "http://www.ñàéò.com/"
#define MyAppExeName "WOD.exe"

[Setup]
; Ïðèìå÷àíèå: Çíà÷åíèå AppId èäåíòèôèöèðóåò ýòî ïðèëîæåíèå.
; Íå èñïîëüçóéòå îäíî è òîæå çíà÷åíèå â ðàçíûõ óñòàíîâêàõ.
; (Äëÿ ãåíåðàöèè çíà÷åíèÿ GUID, íàæìèòå Èíñòðóìåíòû | Ãåíåðàöèÿ GUID.)
AppId={{5579DEF8-4821-43B2-B20A-F0768A5F1284}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\GameXP\AccessPoint\installed\World of Dragon
DefaultGroupName={#MyAppName}
AllowNoIcons=yes
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]
; Ïðèìå÷àíèå: Íå èñïîëüçóéòå "Flags: ignoreversion" äëÿ ñèñòåìíûõ ôàéëîâ
Source: WOD.exe; DestDir: {app}

[Icons]
Name: {group}\{#MyAppName}; Filename: {app}\{#MyAppExeName}
Name: {group}\{cm:ProgramOnTheWeb,{#MyAppName}}; Filename: {#MyAppURL}
Name: {group}\{cm:UninstallProgram,{#MyAppName}}; Filename: {uninstallexe}
Name: {commondesktop}\{#MyAppName}; Filename: {app}\{#MyAppExeName}; Tasks: desktopicon
Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}; Filename: {app}\{#MyAppExeName}; Tasks: quicklaunchicon

[Run]
Filename: {app}\{#MyAppExeName}; Description: {cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}; Flags: nowait postinstall skipifsilent



http://file.sampo.ru/nkz7n3/

Последний раз редактировалось audiofeel, 22-05-2014 в 21:44.

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

Отправлено: 21:32, 22-05-2014 | #741



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

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


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


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

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


Цитата audiofeel:
надо наверняка отследить какие изменения вносит в реестр веб установщик »
То есть нужно просто все, что найду в реестре, связанное в веб установщиком, экспортировать и потом вставить в скрипт? Или что то еще делать? Просто насчет реестра мне тоже не все понятно. Я уже выше писала, что уроки всякие смотрела и читала про создание установщиков. Так где то говорится, что файлы (или значения правильно?) реестра просто вставить в скрипт. А где то сказано, что этот реестр нужно вставлять через ISTool и еще там какие то команды выполнять.

Цитата audiofeel:
а что у вас указанно в #define {#MyAppName} ????? »
#define MyAppName "World of Dragons"

Отправлено: 21:35, 22-05-2014 | #742


Аватара для audiofeel

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


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

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


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

Отправлено: 21:53, 22-05-2014 | #743


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


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

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


Цитата audiofeel:
если игра устанавливается по умолчанию в C:\GameXP\AccessPoint\installed\World of Dragons\ »
Цитата audiofeel:
давайте сперва разберемся почему ярлык не работает »
Знаете, вы меня натолкнули на мысль, что я изначально все неправильно сделала. Просто у меня уже в C:\GameXP\AccessPoint куча папок и файлов, а сама игра ведь и правда в C:\GameXP\AccessPoint\installed\World of Dragons, а то что в AccessPoint это файлы веб установщика, я так понимаю. И архивировать нужно было все что в папке World of Dragons, а не в папке AccessPoint, как сделала я. Может поэтому не работает?

Отправлено: 22:12, 22-05-2014 | #744


Ветеран


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

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


Irenis, audiofeel, рабочая папка указывает на то, какая папка будет сделана текущей при запуске приложения, в которой рассположены определенные файлы. И это не всегда та папка, в которой находится ексишник.

Последний раз редактировалось saurn, 22-05-2014 в 23:11.


Отправлено: 22:20, 22-05-2014 | #745


Аватара для Dodakaedr

Ветеран


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

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


Вложения
Тип файла: rar SHFileOperation.rar
(2.1 Kb, 16 просмотров)

Цитата Kashtan007:
Всем привет. Мне нужно реализовать 2 чекбокса на странице "Каталог" в установщике.
Т.е. у нас есть полоска выбора пути (куда устанавливать наши компоненты) и нужно чтобы под ней было 2 чекбокса.
1 чекбокс: Удаление старых компонентов. Т.е. у меня есть папка res_mods... Нужно чтобы при выборе этого чекбокса очищало папку res_mods от всего содержимого.
2 чекбокс: Бекап файлов. У меня есть папка res_mods, но допустим в ней нужные компоненты и я хочу их сохранить. То при выборе этого чекбокса будет создана копия папки res_mods которая будет называться old_res_mods. »
Попробуйте вот так:
читать дальше »
Код: Выделить весь код
#include "SHFileOperation.iss"

[Setup]
AppName=Моя программа
AppVersion=1.5
DefaultDirName={pf}\Моя программа

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

[ Code]
var
ModCheck, BackupCheck: TNewCheckBox;

procedure  InitializeWizard;
begin
   ModCheck:= TNewCheckBox.Create(PageFromID(wpSelectDir));
   ModCheck.Width := PageFromID(wpSelectDir).SurfaceWidth;
   ModCheck.Parent := PageFromID(wpSelectDir).Surface;
   ModCheck.Caption:='Удалить все старые моды';
   ModCheck.left:=wizardForm.DirEdit.left;
   ModCheck.Top:=wizardForm.DirEdit.top + ScaleY(30);

   BackupCheck:= TNewCheckBox.Create(PageFromID(wpSelectDir));
   BackupCheck.Width := PageFromID(wpSelectDir).SurfaceWidth;
   BackupCheck.Parent := PageFromID(wpSelectDir).Surface;
   BackupCheck.Caption:='Сохранить резервную копию старых модов';
   BackupCheck.left:=wizardForm.DirEdit.left;
   BackupCheck.Top:=ModCheck.top + ScaleY(30);
end;

procedure CurStepChanged (CurStep: TSetupStep);
begin
 if CurStep=ssInstall then
 if BackupCheck.Checked then
 begin
 CopyDir(ExpandConstant('{app}\res mods\'),ExpandConstant('{app}\old res mods'));
end;

if ModCheck.Checked then
begin
  DelTree(ExpandConstant('{app}\res mods\*'), False, True, True);
end;
end;

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
 if CurUninstallStep = usPostUninstall then
begin
  MoveDir(ExpandConstant('{app}\old res mods\'), ExpandConstant('{app}\res mods'));
  RemoveDir(ExpandConstant('{app}\old res mods'));
end;
end;

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

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

Отправлено: 22:28, 22-05-2014 | #746


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


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

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


Dodakaedr, спасибо большое)

Отправлено: 00:02, 23-05-2014 | #747


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


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

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


Уважаемые форумчане.Может кто-то помочь из данного кода вырезать код плеера.Как не ковырял все с ошибкой идет
Что требуется
Сам код:http://yadi.sk/d/wSVC64JhR47hf

Отправлено: 05:48, 23-05-2014 | #748


Аватара для Dodakaedr

Ветеран


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

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


saneksanek, Выложите все файлы необходимые для работы вашего скрипта, потому что никто не будет сам искать всякие dll-ки, mp3 файлы и т.д.

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


Отправлено: 07:51, 23-05-2014 | #749


Аватара для Dodakaedr

Ветеран


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

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


Цитата Kashtan007:
Как место серых окон (Inner Notebook и Inner Page) на страницах установщика поставить изображение (фон)? »
Цитата Kashtan007:
А легче способа нету? »
Возможно такой подойдет:
читать дальше »
Код: Выделить весь код
#include "WizardFormResise.iss"

[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
WizardImageFile=Fon.bmp
OutputBaseFilename=2

[Files]
Source: IsPicture_for_all.dll; Flags: dontcopy
Source: Fon.bmp; Flags: dontcopy


[ Code]
procedure Initialize(AhWnd,BhWnd:hWnd);external 'Initialize@{tmp}\IsPicture_for_all.dll stdcall delayload';
procedure Deinitialize;external 'Deinitialize@{tmp}\IsPicture_for_all.dll stdcall delayload';
function NewFont(Height:Integer;thickness,italic,underline,strikeout:DWORD;name:String):hWnd;external 'NewFont@{tmp}\IsPicture_for_all.dll stdcall delayload';
function GetSystemMetrics(nIndex:Integer):integer; external 'GetSystemMetrics@user32.dll stdcall delayload';

const
   TfonColor = $000008; // Цвет фона $000008 - не изменять!
   TfontColor = $ffffff; // Цвет тeкста

Var Font1,Font2:hWnd;


function InitializeSetup(): Boolean;
begin
  ExtractTemporaryFile('IsPicture_for_all.dll');
  ExtractTemporaryFile('fon.bmp');
  Result:=True;
end;

procedure InitializeWizard();
begin
Font1:= NewFont(16,600,0,0,0,'Comic Sans MS');
Font2:= NewFont(24,900,0,0,0,'Tahoma');

    WizardForm.WizardSmallBitmapImage.Hide;
    WizardForm.WizardBitmapImage2.Hide;
    WizardForm.DirEdit.AutoSelect:=False;

    WizardForm.WelcomePage.Color:=TfonColor;// не изменять!
    WizardForm.FinishedPage.Color:=TfonColor;
    WizardForm.InnerPage.Color:=TfonColor;
    WizardForm.DirEdit.Color:=TfonColor;
    WizardForm.ReadyMemo.Color:=TfonColor;
    WizardForm.MainPanel.Color:=TfonColor;

    WizardForm.Font.Handle:=Font1;
    WizardForm.WelcomeLabel1.Font.Handle := Font2;
    WizardForm.FinishedHeadingLabel.Font.Handle := Font2;
    WizardForm.PageNameLabel.Font.Handle := Font1;
    WizardForm.PageNameLabel.Font.Color := clGreen;
    WizardForm.Font.Color:=TfontColor;

    WizardForm.SelectDirBitmapImage.BackColor := clNone;
    WizardForm.SelectDirBitmapImage.ReplaceColor := clBtnFace;

    WizardForm.WizardBitmapImage.Parent := MainForm;
    WizardForm.WizardBitmapImage.SetBounds(0, 0, WizardForm.ClientWidth, WizardForm.ClientHeight);

    Initialize(WizardForm.Handle,MainForm.Handle);
end;

procedure DeinitializeSetup();
begin
  Deinitialize;
end;

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


Последний раз редактировалось Dodakaedr, 10-11-2014 в 22:20.

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

Отправлено: 08:14, 23-05-2014 | #750



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты 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
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34




 
Переход