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

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

 

Аватара для habib2302

Ветеран


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

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


доброе время суток.как сделать чтобы при выборе компонента portable не вносились изменения в реестр в самом APPID на 1 скрине
и чтобы не появлялись подобные сообщения на 2 скрине

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


Последний раз редактировалось habib2302, 31-03-2015 в 15:28.


Отправлено: 11:34, 24-01-2014 | #1921



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

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


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


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

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


Цитата habib2302:
чтобы не появлялись подобные сообщения »
Прописать у компонента флаг
Код: Выделить весь код
[Components]
Name: CCleanerBusiness; Description:CCleanerBusiness; Flags: disablenouninstallwarning
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:57, 24-01-2014 | #1922


Ветеран


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

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


Цитата habib2302:
доброе время суток.как сделать чтобы при выборе компонента portable не вносились изменения в реестр в самом APPID на 1 скрине
и чтобы не появлялись подобные сообщения на 2 скрине »
Код: Выделить весь код
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application

;Создание ключа деинсталляции в зависимости от выбранного компонента
CreateUninstallRegKey=not IsComponentSelected('portable')

;Или так, если деинсталятор не нужен совсем
;Uninstallable=not IsComponentSelected('portable')

AppId=MyApp


[Files]
Source: compiler:Examples\MyProg.exe; DestDir: {app}; Components: portable;
Source: C:\Windows\Fonts\*; DestDir: {app}; Flags: external; Components: normal;


[Components]
Name: portable; Description: Портативная; Flags: exclusive; Types: full;

;Флаг disablenouninstallwarning указывает инсталлятору не предупредить пользователя, что этот компонент не
;удалится после того, как он снимет с него флажок, если этот компонент уже установлен на данном компьютере.
Name: normal; Description: Обычная; Flags: exclusive disablenouninstallwarning;
Читаем справку.

Последний раз редактировалось saurn, 24-01-2014 в 13:18.

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

Отправлено: 13:04, 24-01-2014 | #1923


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


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

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


Доброго времени суток!
Возник вопрос, может кто подскажет. Вот есть инсталлятор с кучей кастомных формочек, куда по ходу установки пользователь должен что-то вводить. Можно ли как-то использовать такой инсталлятор в "тихом" режиме и передавать данные, которые "ввел пользователь" параметрами? Вариант просто забивать в коде какие-то значения по умолчанию в случае, если пользователь ничего не ввел, не подходит, т к данные могут быть разные

Отправлено: 16:55, 24-01-2014 | #1924


Ветеран


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

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


Shkutu, на скорую руку в голову пришел такой вариант:
читать дальше »
Код: Выделить весь код
const
    PARAM1 = ' -folder1';
    PARAM2 = ' -folder2';
    PARAM3 = ' -folder3';
    
    
function CheckParam(const nInput: Integer): Boolean;
begin
    case nInput of
        0: Result := Pos(PARAM1, GetCmdTail) <> 0;
        1: Result := Pos(PARAM2, GetCmdTail) <> 0;
        2: Result := Pos(PARAM3, GetCmdTail) <> 0;
    end;
end;


procedure InitializeWizard();
begin
    if CheckParam(0) then WizardForm.DirEdit.Text := PARAM1;
    if CheckParam(1) then WizardForm.DirEdit.Text := PARAM2;
    if CheckParam(2) then WizardForm.DirEdit.Text := PARAM3;
end;

Уверен, можно сделать и лучше.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:29, 24-01-2014 | #1925


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


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

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


saurn, если я правильно поняла - это не совсем то, что мне нужно. Ваш способ все равно ведь предполагает задание значений необходимых параметров в коде (хотя и более вариативно, чем использование 1 значения по умолчанию). А требуется, чтобы в качестве значение параметра мог задать сам пользователь по своему усмотрению.
Хотя сама идея просто парсить GetCmdTail может помочь, спасибо
А вот еще вопрос. Можно ли запускать компиляцию инно скриптов через командную строку? Пробовала просто Compil32.exe <script.iis> - но в этом случае скрипт просто открывается
UPD. С компиляцией из командной строки уже разобралась. Оказывается, просто ключа "/сс" не хватало. Все-таки у инно довольно подробная справка

Последний раз редактировалось Shkutu, 24-01-2014 в 18:05.


Отправлено: 17:59, 24-01-2014 | #1926


Ветеран


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

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


Shkutu, не сразу понял, что вам нужно
читать дальше »
Код: Выделить весь код
function CMDCheck(): String;
var
   i: Integer;
begin
    for i := 0 to ParamCount do Result := ParamStr(i);
end;


procedure InitializeWizard();
begin
    WizardForm.DirEdit.Text := CMDCheck();
end;

Проверяйте корректность выполнения.
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:35, 24-01-2014 | #1927


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


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

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


saurn, да, спасибо, как раз тоже про ParamStr подумала

Отправлено: 18:38, 24-01-2014 | #1928


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


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

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


Здравствуйте форумчане! Подскажите, пожалуйста, как осуществить соединение 2-х страниц:
читать дальше »
#define NeedVers "8.10"
[Setup]
AppName=TAY50N_mods
AppVersion=8.0
AppVerName=TAY50N_mods_8.0
DefaultDirName=C:\Games\World_of_Tanks
DefaultGroupName=TAY50N_mods
DirExistsWarning=no
AllowNoIcons=yes
AppPublisher=DEFIR
AppPublisherURL=defir.uniogame.com
AppCopyright=Copyright (C) TAY50N_mods
OutputBaseFilename=setup
WizardImageFile=InstallFiles\WizardImage.bmp
WizardSmallImageFile=InstallFiles\WizardSmallImage.bmp
SetupIconFile=InstallFiles\DEFIR.ico

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


[Types]
Name: custom; Description: Custom installation; Flags: iscustom

[Components]
Name: a; Description: Удаляем видео заставку;
Name: b; Description: "Часы в Ангаре";
Name: c; Description: Выберите Прицел;
Name: c\1; Description: "от zayaz"; Flags: exclusive;
Name: c\2; Description: "от ZCH_0933"; Flags: exclusive;
Name: c\3; Description: "от dab97"; Flags: exclusive;
Name: c\4; Description: "Бирюза"; Flags: exclusive;
Name: c\5; Description: "Анимированый"; Flags: exclusive;
;Name: d; Description: "УГН";
;Name: e; Description: "ZoomMod + ZoomX";
;Name: q; Description: "Стандартные Звуки (папка Audio)";
;Name: f; Description: "Зоны пробития";
;Name: g; Description: "Белые трупы танков";
;Name: h; Description: "Уведомление союзников о засвете";
;Name: i; Description: "Прозрачный чат";
;Name: j; Description: "Дамаг Индикатор";
;Name: k; Description: Выберите Ангар;
;Name: k\1; Description: "«8 ноября»"; Flags: exclusive;
;Name: k\2; Description: "«Мастерская WG»"; Flags: exclusive;
;Name: l; Description: "Иконки";
;Name: m; Description: "Информативная панель";
;Name: o; Description: "Меню рамашка от TRJ-VoRoN";
;Name: p; Description: "Понель повреждений";
;Name: r; Description: "Статистика за сессию";
;Name: s; Description: "Список грядущих боёв на ГК";
;Name: t; Description: "Танки в два ряда";
;Name: y; Description: "XVM (Олень)";
;Name: u; Description: "Фокус";
;Name: w; Description: "Отображение оверлея (TS_Mumble_RaidCall)";
;Name: x; Description: "Максимальное увеличение дальности видимости";
;Name: z; Description: "Звуковой мод Громовые орудия, версия 1.6";
;Name: n; Description: "Реалистичная озвучка экипажа";
;Name: b1; Description: "Убираем облака";

[Files]
Source: "C:\Users\TaucoH\Desktop\334\InstallFiles\isskin.dll"; DestDir: "{app}"; Flags: ignoreversion; Attribs: hidden system;
Source: "C:\Users\TaucoH\Desktop\334\InstallFiles\Tiger.cjstyles"; DestDir: "{app}"; Flags: ignoreversion; Attribs: hidden system;
Source: "C:\Users\TaucoH\Desktop\334\InstallFiles\WizardImage.bmp"; DestDir: "{app}"; Flags: ignoreversion; Attribs: hidden system;
Source: "C:\Users\TaucoH\Desktop\334\InstallFiles\WizardSmallImage.bmp"; DestDir: "{app}"; Flags: ignoreversion; Attribs: hidden system;
Source: "C:\Games\World_of_Tanks\MODS\01. Удаляем видео заставку (INTRO)\*"; DestDir: {app}\res_mods\; Flags: ignoreversion createallsubdirs recursesubdirs; Components: a;
Source: "C:\Games\World_of_Tanks\MODS\02. Часы в Ангаре\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: b;
Source: "C:\Games\World_of_Tanks\MODS\03.1 Прицел zayaz\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: c\1;
Source: "C:\Games\World_of_Tanks\MODS\03.2 Прицел ZCH_0933\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: c\2;
Source: "C:\Games\World_of_Tanks\MODS\03.3 Прицел от dab97\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: c\3;
Source: "C:\Games\World_of_Tanks\MODS\03.4 Прицел Бирюза\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: c\4;
Source: "C:\Games\World_of_Tanks\MODS\03.5 Прицел анимированый\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: c\5;
;Source: "C:\Games\World_of_Tanks\MODS\04. УГН\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: d;
;Source: "C:\Games\World_of_Tanks\MODS\05. ZoomMod + ZoomX\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: e;
;Source: "C:\Games\World_of_Tanks\MODS\06. Звуки Стандартные (папка Audio)\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: q;
;Source: "C:\Games\World_of_Tanks\MODS\07. Зоны пробития\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: f;
;Source: "C:\Games\World_of_Tanks\MODS\08. Белые трупы танков\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: g;
;Source: "C:\Games\World_of_Tanks\MODS\09. Уведомление союзников о засвете\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: h;
;Source: "C:\Games\World_of_Tanks\MODS\10. Прозрачный чат\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: i;
;Source: "C:\Games\World_of_Tanks\MODS\11. Дамаг Индикатор\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: j;
;Source: "C:\Games\World_of_Tanks\MODS\12.1 Ангар «8 ноября»\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: k\1;
;Source: "C:\Games\World_of_Tanks\MODS\12.2 Ангар «Мастерская WG»\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: k\2;
;Source: "C:\Games\World_of_Tanks\MODS\13. Иконки\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: l;
;Source: "C:\Games\World_of_Tanks\MODS\14. Информативная панель\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: m;
;Source: "C:\Games\World_of_Tanks\MODS\16. Меню рамашка от TRJ-VoRoN\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: o;
;Source: "C:\Games\World_of_Tanks\MODS\17. Понель повреждений\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: p;
;Source: "C:\Games\World_of_Tanks\MODS\18. Статистика за сессию\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: r;
;Source: "C:\Games\World_of_Tanks\MODS\19. Список грядущих боёв на ГК\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: s;
;Source: "C:\Games\World_of_Tanks\MODS\20. Танки в два ряда\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: t;
;Source: "C:\Games\World_of_Tanks\MODS\21. XVM (Олень)\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: y;
;Source: "C:\Games\World_of_Tanks\MODS\22. Фокус\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: u;
;Source: "C:\Games\World_of_Tanks\MODS\23. Отображение оверлея (TS_Mumble_RaidCall)\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: w;
;Source: "C:\Games\World_of_Tanks\MODS\24. Максимальное увеличение дальности видимости\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: x;
;Source: "C:\Games\World_of_Tanks\MODS\25. Звуковой мод Громовые орудия, версия 1.6\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: z;
;Source: "C:\Games\World_of_Tanks\MODS\26. Реалистичная озвучка экипажа\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: n;
;Source: "C:\Games\World_of_Tanks\MODS\27. Убираем облака\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: b1;

[Registry]
Root: HKLM; Subkey: "Software\TAY50N_mods\Version"; ValueType: string; ValueName: "Version"; ValueData: "8.0"; Flags: uninsdeletekey

[code]
var
SystemPage: TWizardPage;
ModNameLabel: TNewStaticText;
MouseLabel, SiteLabel: TLabel;

GamePathPanel, GameVersPanel, GameModPanel: TPanel;
FindGamePath, FindGameVers, FindGameMod, ReqSatisfy: TNewStaticText;
GamePathMemo, GameVersMemo, GameModMemo, GamePathFindMemo, GameVersFindMemo, GameModFindMemo: TPanel;
RenameCheckBox: TNewCheckBox;

//процедуры, для использования скина (Tiger.cjstyles)
procedure LoadSkin(lpszPath: PAnsiChar; lpszIniFileName: PAnsiChar); external 'LoadSkin@{tmp}\isskin.dll stdcall delayload';
procedure UnloadSkin; external 'UnloadSkin@{tmp}\isskin.dll stdcall delayload';
function ShowWindow(hWnd: Integer; uType: Integer): Integer; external 'ShowWindow@user32.dll stdcall';

//процедуры, которые выполняются при наведении на ссылку (левый нижний угол)
procedure SiteLabelOnClick(Sender: TObject); var ErrorCode: Integer;
begin
ShellExec('open', 'http:\\defir.uniogame.com', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
end;

procedure SiteLabelMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
SiteLabel.Font.Color := clRed;
end;

procedure SiteLabelMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
SiteLabel.Font.Color := WizardForm.Font.Color;
end;

procedure SiteLabelMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
SiteLabel.Font.Color := clRed;
end;

procedure SiteLabelMouseMove2(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
SiteLabel.Font.Color := WizardForm.Font.Color;
end;

procedure RedesignWizardForm;
begin
with WizardForm do
begin
Color := clBlack;
WelcomePage.Color := clBlack;
FinishedPage.Color := clBlack;
Font.Color := clWhite;
Font.Style := [fsBold];
Font.Size := 9;
ClientWidth := ScaleX(690);
ClientHeight := ScaleY(459);
Caption := ExpandConstant('{#SetupSetting("AppName")}');
Center;
end;

with WizardForm.OuterNotebook do
begin
SetBounds(ScaleX(223), ScaleY(60), ScaleX(467), ScaleY(350));
end;

with WizardForm.InnerNotebook do
begin
SetBounds(WizardForm.InnerNotebook.Left - ScaleX(25), ScaleY(50), ScaleX(420), ScaleY(260));
end;

with WizardForm.InnerPage do
begin
Color := clBlack;
end;

with WizardForm.Bevel do
begin
SetBounds(ScaleX(0), ScaleY(410), ScaleX(690), ScaleY(2));
end;

with WizardForm.Bevel1 do
begin
Parent := WizardForm;
SetBounds(ScaleX(0), ScaleY(58), ScaleX(690), ScaleY(2));
end;

with WizardForm.MainPanel do
begin
Parent := WizardForm;
SetBounds(ScaleX(0), ScaleY(0), ScaleX(690), ScaleY(58));
end;

with WizardForm.WizardSmallBitmapImage do
begin
Left := ScaleX(633);
end;

with WizardForm.CancelButton do
begin
Left := ScaleX(590);
Top := ScaleY(425);
Font.Name := 'Tahoma';
Font.Size := 8;
Font.Style := [];
end;

with WizardForm.NextButton do
begin
Left := ScaleX(500);
Top := ScaleY(425);
Font.Name := 'Tahoma';
Font.Size := 8;
Font.Style := [];
end;

with WizardForm.BackButton do
begin
Left := ScaleX(410);
Top := ScaleY(425);
Font.Name := 'Tahoma';
Font.Size := 8;
Font.Style := [];
end;

with WizardForm.ReadyMemo do
begin
SetBounds(ScaleX(0), ScaleY(30), ScaleX(417), ScaleY(220));
end;

ModNameLabel := TNewStaticText.Create(WizardForm);
with ModNameLabel do
begin
Parent := WizardForm.MainPanel;
Font.Size := 22;
Font.Name := 'Courier New';
Font.Style := [fsBold];
Font.Color := clWindowText;
SetBounds(ScaleX(50), ScaleY(15), ScaleX(200), ScaleY(50));
Caption := ExpandConstant('{#SetupSetting("AppName")}');
end;

MouseLabel := TLabel.Create(WizardForm);
with MouseLabel do
begin
Parent := WizardForm;
Width := WizardForm.Width;
Height := WizardForm.Height;
Autosize := False;
Transparent := True;
OnMouseMove := @SiteLabelMouseMove2;
end;

SiteLabel := TLabel.Create(WizardForm);
with SiteLabel do
begin
Caption := ExpandConstant('{#SetupSetting("AppPublisherURL")}');
Parent := WizardForm;
Left := ScaleX(15);
Top := ScaleY(425);
Font.Name := 'Courier New';
Cursor := crHand;
OnClick := @SiteLabelOnClick;
OnMouseDown := @SiteLabelMouseDown;
OnMouseUp := @SiteLabelMouseUp;
OnMouseMove := @SiteLabelMouseMove;
end;
end;

//************************************************ [Начало - Компоненты страниц] ***************************************************//

////////////////////// WelcomePage //////////////////////

procedure CreatePageComponents;
begin

with WizardForm.WizardBitmapImage do
begin
Parent := WizardForm;
SetBounds(ScaleX(0), ScaleY(60), ScaleX(223), ScaleY(350));
end;

with TLabel.Create(WizardForm) do
begin
Caption := WizardForm.WelcomeLabel1.Caption;
Parent := WizardForm.WelcomePage;
Alignment := taCenter;
AutoSize := False;
Wordwrap := True;
Font.Name := 'Courier New';
Font.Size := 14;
Font.Style := [fsBold];
Transparent := True;
SetBounds(ScaleX(30), ScaleY(45), ScaleX(407), ScaleY(45));
end;

with WizardForm.WelcomeLabel2 do
begin
Font.Name := 'Courier New';
SetBounds(ScaleX(30), ScaleY(140), ScaleX(407), ScaleY(239));
end;

////////////////////// WelcomePage //////////////////////

with WizardForm.PageNameLabel do
begin
Height := ScaleY(20);
Font.Name := 'Courier New';
Font.Size := 12;
Font.Color := WizardForm.Font.Color;
end;

with WizardForm.PageDescriptionLabel do
begin
Top := WizardForm.PageDescriptionLabel.Top + ScaleY(8);
Height := ScaleY(15);
Width := ScaleX(500);
Font.Name := 'Courier New';
end;

////////////////////// SelectDirPage //////////////////////

WizardForm.SelectDirLabel.Font.Name := 'Courier New';

with WizardForm.SelectDirBrowseLabel do
begin
Height := ScaleY(30);
Font.Name := 'Courier New';
end;

with WizardForm.DirEdit do
begin
Top := ScaleY(100);
Font.Name := 'Courier New';
Font.Size := 8;
end;

with WizardForm.DirBrowseButton do
begin
Top := ScaleY(99);
Font.Name := 'Tahoma';
Font.Size := 8;
Font.Style := [];
end;

with WizardForm.DiskSpaceLabel do
begin
Top := ScaleY(245);
Font.Name := 'Courier New';
end;

////////////////////// SelectDirPage //////////////////////

////////////////////// SelectComponentsPage //////////////////////

with WizardForm.SelectComponentsLabel do
begin
Height := ScaleY(30);
Font.Name := 'Courier New';
end;

with WizardForm.TypesCombo do
begin
Top := ScaleY(45);
Font.Name := 'Courier New';
end;

with WizardForm.ComponentsList do
begin
Top := ScaleY(80);
Height := ScaleY(155);
Font.Name := 'Tahoma';
Font.Size := 8;
Font.Style := [];
end;

with WizardForm.ComponentsDiskSpaceLabel do
begin
Top := ScaleY(245);
Font.Name := 'Courier New';
end;

////////////////////// SelectComponentsPage //////////////////////

////////////////////// SelectProgramGroupPage //////////////////////

with WizardForm.SelectStartMenuFolderLabel do
begin
Font.Name := 'Courier New';
end;

with WizardForm.SelectStartMenuFolderBrowseLabel do
begin
Height := ScaleY(30);
Font.Name := 'Courier New';
end;

with WizardForm.GroupEdit do
begin
Top := ScaleY(100);
Font.Name := 'Courier New';
Font.Size := 8;
end;

with WizardForm.GroupBrowseButton do
begin
Top := ScaleY(99);
Font.Name := 'Tahoma';
Font.Size := 8;
Font.Style := [];
end;

with WizardForm.NoIconsCheck do
begin
Top := ScaleY(245);
Font.Name := 'Courier New';
Width := ScaleX(250);
end;

////////////////////// SelectProgramGroupPage //////////////////////

////////////////////// ReadyPage //////////////////////

WizardForm.ReadyLabel.Font.Name := 'Courier New';
WizardForm.ReadyMemo.Font.Name := 'Courier New';

////////////////////// ReadyPage //////////////////////

////////////////////// InstallingPage //////////////////////

WizardForm.StatusLabel.Font.Name := 'Courier New';
WizardForm.ProgressGauge.SetBounds(ScaleX(0), ScaleY(60), ScaleX(417), ScaleY(30));

with WizardForm.FilenameLabel do
begin
Top := ScaleY(20);
Font.Name := 'Courier New';
Font.Style := [];
end;

////////////////////// InstallingPage //////////////////////

////////////////////// FinishedPage //////////////////////

with WizardForm.WizardBitmapImage2 do
begin
Parent := WizardForm;
SetBounds(ScaleX(0), ScaleY(60), ScaleX(223), ScaleY(350));
end;

with TLabel.Create(WizardForm) do
begin
Caption := WizardForm.FinishedHeadingLabel.Caption;
Parent := WizardForm.FinishedPage;
Alignment := taCenter;
AutoSize := False;
Wordwrap := True;
Font.Name := 'Courier New';
Font.Size := 14;
Font.Style := [fsBold];
Transparent := True;
SetBounds(ScaleX(30), ScaleY(45), ScaleX(407), ScaleY(45));
end;

with WizardForm.FinishedLabel do
begin
Font.Name := 'Courier New';
SetBounds(ScaleX(30), ScaleY(130), ScaleX(407), ScaleY(239));
end;
end;

////////////////////// FinishedPage //////////////////////

////////////////////// UninstallingPage //////////////////////

procedure RedesignUninstallProgressForm;
var
UninstallBitmapImage: TBitmapImage;
begin
with UninstallProgressForm do
begin
Color := clBlack;
Font.Color := clWhite;
Font.Style := [fsBold];
Font.Name := 'Courier New';
Font.Size := 9;
ClientWidth := ScaleX(690);
ClientHeight := ScaleY(459);
Caption := ExpandConstant('{#SetupSetting("AppName")}');
Center;

OuterNotebook.SetBounds(ScaleX(223), ScaleY(60), ScaleX(467), ScaleY(351));
InnerNotebook.SetBounds(UninstallProgressForm.InnerNotebook.Left - ScaleX(25), ScaleY(50), ScaleX(460), ScaleY(260));
InnerPage.Color := clBlack;
Bevel.SetBounds(ScaleX(0), ScaleY(410), ScaleX(690), ScaleY(2));
StatusLabel.Top := ScaleY(0);
ProgressBar.SetBounds(UninstallProgressForm.StatusLabel.Left, ScaleY(50), ScaleX(417), ScaleY(30));
end;

with UninstallProgressForm.PageNameLabel do
begin
Height := ScaleY(20);
Font.Name := UninstallProgressForm.Font.Name;
Font.Size := 12;
Font.Color := UninstallProgressForm.Font.Color;
end;

with UninstallProgressForm.PageDescriptionLabel do
begin
Top := UninstallProgressForm.PageDescriptionLabel.Top + ScaleY(8);
Height := ScaleY(15);
Width := ScaleX(500);
end;

UninstallBitmapImage := TBitmapImage.Create(UninstallProgressForm);
with UninstallBitmapImage do
begin
Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardImage.bmp'));
Parent := UninstallProgressForm;
SetBounds(ScaleX(0), ScaleY(60), ScaleX(223), ScaleY(350));
end;

with UninstallProgressForm.WizardSmallBitmapImage do
begin
Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardSmallImage.bmp'));
Left := ScaleX(633);
end;

with UninstallProgressForm.Bevel1 do
begin
Parent := UninstallProgressForm;
SetBounds(ScaleX(0), ScaleY(58), ScaleX(690), ScaleY(2));
end;

with UninstallProgressForm.MainPanel do
begin
Parent := UninstallProgressForm;
SetBounds(ScaleX(0), ScaleY(0), ScaleX(690), ScaleY(58));
end;

with UninstallProgressForm.CancelButton do
begin
Left := ScaleX(590);
Top := ScaleY(425);
Font.Name := 'Tahoma';
Font.Size := 8;
Font.Style := [];
end;
end;

////////////////////// UninstallingPage //////////////////////

//************************************************ [Конец - Компоненты страниц] ***************************************************//

procedure ShowComponents(CurPageID: Integer);
begin
WizardForm.PageNameLabel.Show;
WizardForm.PageDescriptionLabel.Show;
ModNameLabel.Hide;
WizardForm.WelcomeLabel1.Hide;
WizardForm.FinishedHeadingLabel.Hide;

case CurPageID of
wpWelcome:
begin
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
ModNameLabel.Show;
end;
wpFinished:
begin
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
ModNameLabel.Show;
WizardForm.NextButton.Left := ScaleX(590);
end;
end;
end;

function InitializeSetup: Boolean;
begin
ExtractTemporaryFile('isskin.dll');
ExtractTemporaryFile('Tiger.cjstyles');

LoadSkin(ExpandConstant('{tmp}\Tiger.cjstyles'), '');
Result:=True;
end;

procedure InitializeWizard();
begin
RedesignWizardForm;
CreatePageComponents;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
ShowComponents(CurPageID);
end;

procedure DeinitializeSetup;
begin
ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0);
UnloadSkin;
end;

function InitializeUninstall: Boolean;
begin
FileCopy(ExpandConstant('{app}\isskin.dll'), ExpandConstant('{tmp}\isskin.dll'), False);
FileCopy(ExpandConstant('{app}\Tiger.cjstyles'), ExpandConstant('{tmp}\Tiger.cjstyles'), False);
FileCopy(ExpandConstant('{app}\WizardImage.bmp'), ExpandConstant('{tmp}\WizardImage.bmp'), False);
FileCopy(ExpandConstant('{app}\WizardSmallImage.bmp'), ExpandConstant('{tmp}\WizardSmallImage.bmp'), False);
LoadSkin(ExpandConstant('{tmp}\Tiger.cjstyles'), '');
Result:=True;
end;

procedure InitializeUninstallProgressForm;
begin
RedesignUninstallProgressForm;
end;

procedure DeinitializeUninstall;
begin
UnloadSkin;
end;

Сейчас так:

хотелось бы получить:

Последний раз редактировалось TAY50N, 24-01-2014 в 21:06.


Отправлено: 20:45, 24-01-2014 | #1929


SHVtYW4=


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

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


TAY50N,

читать дальше »
Код: Выделить весь код
[Code]
 var
 SystemPage: TWizardPage;
 ModNameLabel: TNewStaticText;
 MouseLabel, SiteLabel: TLabel;

 GamePathPanel, GameVersPanel, GameModPanel: TPanel;
 FindGamePath, FindGameVers, FindGameMod, ReqSatisfy: TNewStaticText;
 GamePathMemo, GameVersMemo, GameModMemo, GamePathFindMemo, GameVersFindMemo, GameModFindMemo: TPanel;
 RenameCheckBox: TNewCheckBox;

 //процедуры, для использования скина (Tiger.cjstyles)
 procedure LoadSkin(lpszPath: PAnsiChar; lpszIniFileName: PAnsiChar); external 'LoadSkin@{tmp}\isskin.dll stdcall delayload';
 procedure UnloadSkin; external 'UnloadSkin@{tmp}\isskin.dll stdcall delayload';
 function ShowWindow(hWnd: Integer; uType: Integer): Integer; external 'ShowWindow@user32.dll stdcall';

 //процедуры, которые выполняются при наведении на ссылку (левый нижний угол)
 procedure SiteLabelOnClick(Sender: TObject); var ErrorCode: Integer;
 begin
 ShellExec('open', 'http:\\defir.uniogame.com', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
 end;

 procedure SiteLabelMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
 begin
 SiteLabel.Font.Color := clRed;
 end;

 procedure SiteLabelMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
 begin
 SiteLabel.Font.Color := WizardForm.Font.Color;
 end;

 procedure SiteLabelMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
 begin
 SiteLabel.Font.Color := clRed;
 end;

 procedure SiteLabelMouseMove2(Sender: TObject; Shift: TShiftState; X, Y: Integer);
 begin
 SiteLabel.Font.Color := WizardForm.Font.Color;
 end;

 procedure RedesignWizardForm;
 begin
 with WizardForm do
 begin
 Color := clBlack;
 WelcomePage.Color := clBlack;
 FinishedPage.Color := clBlack;
 Font.Color := clWhite;
 Font.Style := [fsBold];
 Font.Size := 9;
 ClientWidth := ScaleX(690);
 ClientHeight := ScaleY(459);
 Caption := ExpandConstant('{#SetupSetting("AppName")}');
 Center;
 end;

 with WizardForm.OuterNotebook do
 begin
 SetBounds(ScaleX(223), ScaleY(60), ScaleX(467), ScaleY(350));
 end;

 with WizardForm.InnerNotebook do
 begin
 SetBounds(WizardForm.InnerNotebook.Left - ScaleX(25), ScaleY(50), ScaleX(420), ScaleY(260));
 end;

 with WizardForm.InnerPage do
 begin
 Color := clBlack;
 end;

 with WizardForm.Bevel do
 begin
 SetBounds(ScaleX(0), ScaleY(410), ScaleX(690), ScaleY(2));
 end;

 with WizardForm.Bevel1 do
 begin
 Parent := WizardForm;
 SetBounds(ScaleX(0), ScaleY(58), ScaleX(690), ScaleY(2));
 end;

 with WizardForm.MainPanel do
 begin
 Parent := WizardForm;
 SetBounds(ScaleX(0), ScaleY(0), ScaleX(690), ScaleY(58));
 end;

 with WizardForm.WizardSmallBitmapImage do
 begin
 Left := ScaleX(633);
 end;

 with WizardForm.CancelButton do
 begin
 Left := ScaleX(590);
 Top := ScaleY(425);
 Font.Name := 'Tahoma';
 Font.Size := 8;
 Font.Style := [];
 end;

 with WizardForm.NextButton do
 begin
 Left := ScaleX(500);
 Top := ScaleY(425);
 Font.Name := 'Tahoma';
 Font.Size := 8;
 Font.Style := [];
 end;

 with WizardForm.BackButton do
 begin
 Left := ScaleX(410);
 Top := ScaleY(425);
 Font.Name := 'Tahoma';
 Font.Size := 8;
 Font.Style := [];
 end;

 with WizardForm.ReadyMemo do
 begin
 SetBounds(ScaleX(0), ScaleY(30), ScaleX(417), ScaleY(220));
 end;

 ModNameLabel := TNewStaticText.Create(WizardForm);
 with ModNameLabel do
 begin
 Parent := WizardForm.MainPanel;
 Font.Size := 22;
 Font.Name := 'Courier New';
 Font.Style := [fsBold];
 Font.Color := clWindowText;
 SetBounds(ScaleX(50), ScaleY(15), ScaleX(200), ScaleY(50));
 Caption := ExpandConstant('{#SetupSetting("AppName")}');
 end;

 MouseLabel := TLabel.Create(WizardForm);
 with MouseLabel do
 begin
 Parent := WizardForm;
 Width := WizardForm.Width;
 Height := WizardForm.Height;
 Autosize := False;
 Transparent := True;
 OnMouseMove := @SiteLabelMouseMove2;
 end;

 SiteLabel := TLabel.Create(WizardForm);
 with SiteLabel do
 begin
 Caption := ExpandConstant('{#SetupSetting("AppPublisherURL")}');
 Parent := WizardForm;
 Left := ScaleX(15);
 Top := ScaleY(425);
 Font.Name := 'Courier New';
 Cursor := crHand;
 OnClick := @SiteLabelOnClick;
 OnMouseDown := @SiteLabelMouseDown;
 OnMouseUp := @SiteLabelMouseUp;
 OnMouseMove := @SiteLabelMouseMove;
 end;
 end;

 //************************************************ [Начало - Компоненты страниц] ***************************************************//

 ////////////////////// WelcomePage //////////////////////

 procedure CreatePageComponents;
 begin

 with WizardForm.WizardBitmapImage do
 begin
 Parent := WizardForm;
 SetBounds(ScaleX(0), ScaleY(60), ScaleX(223), ScaleY(350));
 end;

 with TLabel.Create(WizardForm) do
 begin
 Caption := WizardForm.WelcomeLabel1.Caption;
 Parent := WizardForm.WelcomePage;
 Alignment := taCenter;
 AutoSize := False;
 Wordwrap := True;
 Font.Name := 'Courier New';
 Font.Size := 14;
 Font.Style := [fsBold];
 Transparent := True;
 SetBounds(ScaleX(30), ScaleY(45), ScaleX(407), ScaleY(45));
 end;

 with WizardForm.WelcomeLabel2 do
 begin
 Font.Name := 'Courier New';
 SetBounds(ScaleX(30), ScaleY(140), ScaleX(407), ScaleY(239));
 end;

 ////////////////////// WelcomePage //////////////////////

 with WizardForm.PageNameLabel do
 begin
 Height := ScaleY(20);
 Font.Name := 'Courier New';
 Font.Size := 12;
 Font.Color := WizardForm.Font.Color;
 end;

 with WizardForm.PageDescriptionLabel do
 begin
 Top := WizardForm.PageDescriptionLabel.Top + ScaleY(8);
 Height := ScaleY(15);
 Width := ScaleX(500);
 Font.Name := 'Courier New';
 end;

 ////////////////////// SelectDirPage //////////////////////

 WizardForm.SelectDirLabel.Font.Name := 'Courier New';

 with WizardForm.SelectDirBrowseLabel do
 begin
 Height := ScaleY(30);
 Font.Name := 'Courier New';
 end;

 with WizardForm.DirEdit do
 begin
 Top := ScaleY(50);
 Font.Size := 8;
 Font.Name := 'Courier New';
 Parent := WizardForm.SelectComponentsPage;
 end;

 with WizardForm.DirBrowseButton do
 begin
 Top := ScaleY(49);
 Font.Name := 'Tahoma';
 Font.Size := 8;
 Font.Style := [];
 Parent := WizardForm.SelectComponentsPage;
 end;

 with WizardForm.DiskSpaceLabel do
 begin
 Top := ScaleY(245);
 Font.Name := 'Courier New';
 end;

 ////////////////////// SelectDirPage //////////////////////

 ////////////////////// SelectComponentsPage //////////////////////

 with WizardForm.SelectComponentsLabel do
 begin
 Height := ScaleY(30);
 Font.Name := 'Courier New';
 end;

 with WizardForm.TypesCombo do
 begin
 Top := ScaleY(45);
 Font.Name := 'Courier New';
 end;

 with WizardForm.ComponentsList do
 begin
 Top := ScaleY(80);
 Height := ScaleY(155);
 Font.Name := 'Tahoma';
 Font.Size := 8;
 Font.Style := [];
 end;

 with WizardForm.ComponentsDiskSpaceLabel do
 begin
 Top := ScaleY(245);
 Font.Name := 'Courier New';
 end;

 ////////////////////// SelectComponentsPage //////////////////////

 ////////////////////// SelectProgramGroupPage //////////////////////

 with WizardForm.SelectStartMenuFolderLabel do
 begin
 Font.Name := 'Courier New';
 end;

 with WizardForm.SelectStartMenuFolderBrowseLabel do
 begin
 Height := ScaleY(30);
 Font.Name := 'Courier New';
 end;

 with WizardForm.GroupEdit do
 begin
 Top := ScaleY(100);
 Font.Name := 'Courier New';
 Font.Size := 8;
 end;

 with WizardForm.GroupBrowseButton do
 begin
 Top := ScaleY(99);
 Font.Name := 'Tahoma';
 Font.Size := 8;
 Font.Style := [];
 end;

 with WizardForm.NoIconsCheck do
 begin
 Top := ScaleY(245);
 Font.Name := 'Courier New';
 Width := ScaleX(250);
 end;

 ////////////////////// SelectProgramGroupPage //////////////////////

 ////////////////////// ReadyPage //////////////////////

 WizardForm.ReadyLabel.Font.Name := 'Courier New';
 WizardForm.ReadyMemo.Font.Name := 'Courier New';

 ////////////////////// ReadyPage //////////////////////

 ////////////////////// InstallingPage //////////////////////

 WizardForm.StatusLabel.Font.Name := 'Courier New';
 WizardForm.ProgressGauge.SetBounds(ScaleX(0), ScaleY(60), ScaleX(417), ScaleY(30));

 with WizardForm.FilenameLabel do
 begin
 Top := ScaleY(20);
 Font.Name := 'Courier New';
 Font.Style := [];
 end;

 ////////////////////// InstallingPage //////////////////////

 ////////////////////// FinishedPage //////////////////////

 with WizardForm.WizardBitmapImage2 do
 begin
 Parent := WizardForm;
 SetBounds(ScaleX(0), ScaleY(60), ScaleX(223), ScaleY(350));
 end;

 with TLabel.Create(WizardForm) do
 begin
 Caption := WizardForm.FinishedHeadingLabel.Caption;
 Parent := WizardForm.FinishedPage;
 Alignment := taCenter;
 AutoSize := False;
 Wordwrap := True;
 Font.Name := 'Courier New';
 Font.Size := 14;
 Font.Style := [fsBold];
 Transparent := True;
 SetBounds(ScaleX(30), ScaleY(45), ScaleX(407), ScaleY(45));
 end;

 with WizardForm.FinishedLabel do
 begin
 Font.Name := 'Courier New';
 SetBounds(ScaleX(30), ScaleY(130), ScaleX(407), ScaleY(239));
 end;
 end;

 ////////////////////// FinishedPage //////////////////////

 ////////////////////// UninstallingPage //////////////////////

 procedure RedesignUninstallProgressForm;
 var
 UninstallBitmapImage: TBitmapImage;
 begin
 with UninstallProgressForm do
 begin
 Color := clBlack;
 Font.Color := clWhite;
 Font.Style := [fsBold];
 Font.Name := 'Courier New';
 Font.Size := 9;
 ClientWidth := ScaleX(690);
 ClientHeight := ScaleY(459);
 Caption := ExpandConstant('{#SetupSetting("AppName")}');
 Center;

 OuterNotebook.SetBounds(ScaleX(223), ScaleY(60), ScaleX(467), ScaleY(351));
 InnerNotebook.SetBounds(UninstallProgressForm.InnerNotebook.Left - ScaleX(25), ScaleY(50), ScaleX(460), ScaleY(260));
 InnerPage.Color := clBlack;
 Bevel.SetBounds(ScaleX(0), ScaleY(410), ScaleX(690), ScaleY(2));
 StatusLabel.Top := ScaleY(0);
 ProgressBar.SetBounds(UninstallProgressForm.StatusLabel.Left, ScaleY(50), ScaleX(417), ScaleY(30));
 end;

 with UninstallProgressForm.PageNameLabel do
 begin
 Height := ScaleY(20);
 Font.Name := UninstallProgressForm.Font.Name;
 Font.Size := 12;
 Font.Color := UninstallProgressForm.Font.Color;
 end;

 with UninstallProgressForm.PageDescriptionLabel do
 begin
 Top := UninstallProgressForm.PageDescriptionLabel.Top + ScaleY(8);
 Height := ScaleY(15);
 Width := ScaleX(500);
 end;

 UninstallBitmapImage := TBitmapImage.Create(UninstallProgressForm);
 with UninstallBitmapImage do
 begin
 Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardImage.bmp'));
 Parent := UninstallProgressForm;
 SetBounds(ScaleX(0), ScaleY(60), ScaleX(223), ScaleY(350));
 end;

 with UninstallProgressForm.WizardSmallBitmapImage do
 begin
 Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardSmallImage.bmp'));
 Left := ScaleX(633);
 end;

 with UninstallProgressForm.Bevel1 do
 begin
 Parent := UninstallProgressForm;
 SetBounds(ScaleX(0), ScaleY(58), ScaleX(690), ScaleY(2));
 end;

 with UninstallProgressForm.MainPanel do
 begin
 Parent := UninstallProgressForm;
 SetBounds(ScaleX(0), ScaleY(0), ScaleX(690), ScaleY(58));
 end;

 with UninstallProgressForm.CancelButton do
 begin
 Left := ScaleX(590);
 Top := ScaleY(425);
 Font.Name := 'Tahoma';
 Font.Size := 8;
 Font.Style := [];
 end;
 end;

 ////////////////////// UninstallingPage //////////////////////

 //************************************************ [Конец - Компоненты страниц] ***************************************************//

 procedure ShowComponents(CurPageID: Integer);
 begin
 WizardForm.PageNameLabel.Show;
 WizardForm.PageDescriptionLabel.Show;
 ModNameLabel.Hide;
 WizardForm.WelcomeLabel1.Hide;
 WizardForm.FinishedHeadingLabel.Hide;

 case CurPageID of
 wpWelcome:
 begin
 WizardForm.PageNameLabel.Hide;
 WizardForm.PageDescriptionLabel.Hide;
 ModNameLabel.Show;
 end;
 wpFinished:
 begin
 WizardForm.PageNameLabel.Hide;
 WizardForm.PageDescriptionLabel.Hide;
 ModNameLabel.Show;
 WizardForm.NextButton.Left := ScaleX(590);
 end;
 end;
 end;

 function InitializeSetup: Boolean;
 begin
 ExtractTemporaryFile('isskin.dll');
 ExtractTemporaryFile('Tiger.cjstyles');

 LoadSkin(ExpandConstant('{tmp}\Tiger.cjstyles'), '');
 Result:=True;
 end;

 procedure InitializeWizard();
 begin
 RedesignWizardForm;
 CreatePageComponents;
 end;

 procedure CurPageChanged(CurPageID: Integer);
 begin
 ShowComponents(CurPageID);
 end;

 procedure DeinitializeSetup;
 begin
 ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0);
 UnloadSkin;
 end;

 function InitializeUninstall: Boolean;
 begin
 FileCopy(ExpandConstant('{app}\isskin.dll'), ExpandConstant('{tmp}\isskin.dll'), False);
 FileCopy(ExpandConstant('{app}\Tiger.cjstyles'), ExpandConstant('{tmp}\Tiger.cjstyles'), False);
 FileCopy(ExpandConstant('{app}\WizardImage.bmp'), ExpandConstant('{tmp}\WizardImage.bmp'), False);
 FileCopy(ExpandConstant('{app}\WizardSmallImage.bmp'), ExpandConstant('{tmp}\WizardSmallImage.bmp'), False);
 LoadSkin(ExpandConstant('{tmp}\Tiger.cjstyles'), '');
 Result:=True;
 end;

 procedure InitializeUninstallProgressForm;
 begin
 RedesignUninstallProgressForm;
 end;

 procedure DeinitializeUninstall;
 begin
 UnloadSkin;
 end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:18, 24-01-2014 | #1930



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




 
Переход