Ru-Board.club
← Вернуться в раздел «Программы»

» Inno Setup (создание инсталяционных пакетов)

Автор: Unc1e
Дата сообщения: 08.10.2007 21:11
Andrey_Wlodimirovich, импорт из реестра есть в ISTool (см. шапку). Выбираешь секцию [Registry] кликаешь правой кнопкой, жмешь "Импортировать из файла" и указываешь .reg файл.
Автор: Angel_Smerti
Дата сообщения: 08.10.2007 23:24
Andrey_Wlodimirovich я тоже занимался этой игрой и у меня есть реестр для The Sims 2, если интересно то лови.

P. S.
Если добьешь инсталляшку до победного, то пришли мне скриптик, коли не жалко.
Автор: Andrey_Wlodimirovich
Дата сообщения: 09.10.2007 14:42
Unc1e
Да сенки .. ISTool - решил эту проблемку.
Angel_Smerti
Инсталяшку добью и скрипт скину )

У мну такой вопрос.. в реестре (из прошлого поста) были такие переменные (из ИнсталШида):
<TARGETDIR>
<SHELL_OBJECT_FOLDER>
<SRCDIR>

Вместо первой переменной у Inno - {app} (ну это по смыслу понятно) а остальные?
Автор: Unc1e
Дата сообщения: 09.10.2007 15:03
Andrey_Wlodimirovich Первую ты верно определил;
<SRCDIR> = {src} - откуда запущен инсталл. А вот на счет второй непонятно. Вот цитата на описание этой переменной из help`а для InstallShield 10.5

Цитата:
SHELL_OBJECT_FOLDER
This system variable is used to store a folder name that can be referenced in the Displayed Name field for a folder in the Shortcuts view of the IDE. You can then define the display name for the folder at run time by setting the SHELL_OBJECT_FOLDER variable in your script.

Я че-то так и не понял зачем она...если языком владеешь - разберешся!
Автор: Cryzer
Дата сообщения: 09.10.2007 15:59
Victor_Dobrov

Спасибо, получилось!
К сожалению, опять возникла проблема. Вот для примера привёл [more=код][Types]
Name: "full"; Description: "1 - Полная установка и настройка (рекомендуется)";
Name: "custom"; Description: "2 - Выборочная установка и настройка"; Flags: iscustom

[Components]
Name: "main"; Description: "IrfanView"; Types: full custom; Flags: fixed
Name: "main\ass"; Description: "Ассоциация"; Types: full
Name: "main\ass\ani"; Description: "*.ani"; Types: full

Name: "main\ass\current_user"; Description: "Для текущего пользователя"; Types: full; Flags: exclusive
Name: "main\ass\all_users"; Description: "Для всех пользователей (рекомендуется)"; Types: full; Flags: exclusive

[Registry]
Root: HKLM; Subkey: "SOFTWARE\Classes\.ani"; ValueType: string; ValueName: ""; ValueData: "IrfanView.ANI"; Flags: uninsdeletevalue uninsdeletekeyifempty; Components: main\ass\ani main\ass\all_users
Root: HKCU; Subkey: "Software\Classes\.ani"; ValueType: string; ValueName: ""; ValueData: "IrfanView.ANI"; Flags: uninsdeletevalue uninsdeletekeyifempty; Components: main\ass\ani main\ass\current_user[/more]

Я хочу сделать так, чтобы ассоциировалось ТОЛЬКО или в текущем пользователе, или во всех. Поэтому сделал вышенаписанное. Но в результате оказывается, что при любом выборе ассоциируется и в HKLM, и в HKCU! В чём проблема и как решить?
... или всё верно?
Автор: Makz AN
Дата сообщения: 09.10.2007 20:03
В программе в основном я использую "мастера"
Проблема возникает в том что при компиляции больших файлов их надо разбить на части. Например игра 6 Гб, при сжатие в ZIP'e у меня получалось 3.9 Гб... Но такой файл на ДВД диск не запишешь, поэтому возникает потребность разбивки на части (например по 700мб).
Помогите пожалуйста с кодом, как это можно сделать ?
Автор: Unc1e
Дата сообщения: 09.10.2007 20:35
Makz AN
[Setup]
DiskSpanning=yes
SlicesPerDisk=1
DiskSliceSize=732000000
И ещё совет - прочитай весь help!
Автор: Makz AN
Дата сообщения: 09.10.2007 21:18
благодарствую... на каникулах прочту)))
Автор: Ipse San
Дата сообщения: 09.10.2007 21:44
Ну вот, ISTool стал опенсорсным
Автор: Victor_Dobrov
Дата сообщения: 10.10.2007 01:32
Cryzer
А [more=если так:]
[Setup]
AppName=IrfanView
AppVerName=IrfanView
CreateAppDir=false

[Types]
Name: full; Description: 1 - Установка для всех пользователей
Name: current; Description: 2 - Только для текущего пользователя
Name: custom; Description: 3 - Выборочная установка и настройка; Flags: iscustom

[Components]
Name: main; Description: IrfanView
Name: main\ani; Description: Ассоциация ANI; Types: full
Name: main\ani\current_user; Description: Для текущего пользователя; Types: current; Flags: exclusive
Name: main\ani\all_users; Description: Для всех пользователей (рекомендуется); Types: full; Flags: exclusive
Name: main\cur; Description: Ассоциация CUR; Types: full
Name: main\cur\current_user; Description: Для текущего пользователя; Types: current; Flags: exclusive
Name: main\cur\all_users; Description: Для всех пользователей (рекомендуется); Types: full; Flags: exclusive

[Registry]
Root: HKLM; Subkey: Software\Classes\.ani; ValueType: string; ValueName: ; ValueData: IrfanView.ANI; Flags: uninsdeletevalue uninsdeletekeyifempty; Components: main\ani\all_users
Root: HKLM; Subkey: Software\Classes\.cur; ValueType: string; ValueName: ; ValueData: IrfanView.CUR; Flags: uninsdeletevalue uninsdeletekeyifempty; Components: main\cur\all_users
Root: HKCU; Subkey: Software\Classes\.cur; ValueType: string; ValueName: ; ValueData: IrfanView.CUR; Flags: uninsdeletevalue uninsdeletekeyifempty; Components: main\cur\current_user
Root: HKCU; Subkey: Software\Classes\.ani; ValueType: string; ValueName: ; ValueData: IrfanView.ANI; Flags: uninsdeletevalue uninsdeletekeyifempty; Components: main\ani\current_user
[/more]
Автор: omals
Дата сообщения: 10.10.2007 10:01
блин "лимит страниц. продолжаем здесь "
я то думаю почему нет новых месаг ......
Автор: Finn
Дата сообщения: 10.10.2007 18:02
K-Lite Mega Codec Pack версия 3.4.5.0 (запакован Inno Setup) не открывается последним innounp.exe Странно, вроде должен поддерживать эту версию уже.
Автор: zeroandruxa
Дата сообщения: 10.10.2007 20:04
Народ подскажите - как установить и деинсталировать виндовский сервис с помощью Inno Setup?
Автор: Victor_Dobrov
Дата сообщения: 11.10.2007 01:25

Цитата:
K-Lite Mega Codec Pack версия 3.4.5.0 (запакован Inno Setup) не открывается последним innounp.exe

Может запаролен... Версия 3.35 открывается.
Автор: Foruman
Дата сообщения: 11.10.2007 07:06
Здравствуйте.

Помогите пожалуйста разобраться.
Пытаюсь сделать небольшой инсталятор, в который входят несколько dll библиотек и ключи реестра, причем какие файлы куда копировать и какие ключи заносить в реестр зависит от версии Windows (Windows 98, Windows 2000, Windows XP) - только эти три версии.

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

Спасибо.
Автор: demoded
Дата сообщения: 11.10.2007 07:12
попытался создать бекап как описано в faq'e...

Source: "{app}\Data\BaseT.mdb"; DestDir: {app}\Data\; DestName: back.mdb

при компилировании меня послали вот так:
---------------------------
Compiler Error
---------------------------
Line 22:
Source file "D:\development\InnoSetup\{app}\Data\BaseT.mdb" does not exist.

получается в Source он не декодирует должным образом {app}

как еще можно из инсталлера взять файлик из существующей папки и скопировать его в другое место
Автор: kirillkr
Дата сообщения: 11.10.2007 10:12
Можно создать ярлык для подключения к RDC с указанием ипшника, логина и пароля?
Автор: omals
Дата сообщения: 11.10.2007 10:42
2Foruman

см. в хелпе GetWindowsVersion (или GetWindowsVersionEx)
например для в2к пишем
в
[Files]
Source: "..\MyFile"; DestDir: "{app}"; Flags: ignoreversion; Check: ISWin2k;

в
[Code]
function ISWin2k(): boolean;
begin
Result:= False;
if (GetWindowsVersion = $05000893) then Result:= True;
end;

надеюсь идея понятна ?
Автор: Victor_Dobrov
Дата сообщения: 11.10.2007 11:14
InnoSetup Upgrade - расширение возможностей Inno Setup.
Проверка минимальных требований, подсчёт объёма папок, список дисков на wpSelectDir, список папок на wpSelectProgramGroup, защита системной папки, выбор вариантов деинсталляции, деинсталляция неучтённых файлов, подсчёт времени установки.
Подключение этого расширения добавляет к инсталлятору всего 11 Кбайт!
Автор: Nagual
Дата сообщения: 11.10.2007 11:31
мужики такой вопрос возник
использую трекерную музыку в установке
есть ли возможность из командной строки отключить музыку?
setup /verysilent не помогает ессно
Автор: Andrey_Wlodimirovich
Дата сообщения: 11.10.2007 15:14
Люди подскажите такую штуку, я скачал:
Цитата:
Руководство по расширенным возможностям Inno Setup 5 (не для чайников) от Kindly

И мне понравился инсталятор, точнее скин (идея скина)


Пытался тоже сделать так: растянуть изображение на область визарда (т.е. вставить это фоновое изображение), но здесь видно это фоновое изображение, а у меня оно перекрывается фоновым цветом текста. (пытался переделать скин blue)
Подскажите как сделать так чтоб текст был без фона (или с прозрачным фоном) и чтоб не перекрывало фоноывый имедж.

Добавлено:
ЗЫ сам гайд от Kindly тож оч. понравился, много полезного.
Автор: Victor_Dobrov
Дата сообщения: 11.10.2007 15:30
Вместо TNewStaticText нужно создать TLabel и установить Transparent:= true

P.S. А чем Corona Skin не нравится?
Автор: Andrey_Wlodimirovich
Дата сообщения: 11.10.2007 20:35
Не знаю. может я не правильно делаю что использую в качестве материала скин [more=blue]
Код:
Const
ButtonWidth = 77; //размер кнопок
ButtonHeight = 25;
ButtonFontColor = $000000; //цвет шрифта кнопок
PageColor = $ab663d; //цвет страниц
FontColor = $ffffff; //цвет шрифта
MainTextBackColor = $663300; //цвет заднего фона текста сверху
BeveledLabelFontColor = clBlue; //цвет текста в нижнем левом углу
bidBack = 0;
bidNext = 1;
bidCancel = 2;
bidDirBrowse = 3;
bidGroupBrowse = 4;

Var
ButtonPanel: array [0..4] of TPanel;
ButtonImage: array [0..4] of TBitmapImage;
ButtonLabel: array [0..4] of TLabel;
BeveledLabel: TLabel;
WizardButtonPanel,BrowseButtonPanel: TPanel;
WizardButtonImage,BrowseButtonImage: TBitmapImage;
WizardButtonLabel,WizardButtonLabel2,BrowseButtonLabel,BrowseButtonLabel2: TLabel;
LicenseAcceptedText,LicenseNotAcceptedText,NoIconsText,YesRadioText,NoRadioText: TNewStatictext;

Procedure LicenseAcceptedOnClick (Sender: TObject);
begin
WizardForm.LicenseAcceptedRadio.Checked:=True
ButtonLabel[bidNext].Enabled:=True
end;

Procedure LicenseNotAcceptedOnClick (Sender: TObject);
begin
WizardForm.LicenseNotAcceptedRadio.Checked:=True
ButtonLabel[bidNext].Enabled:=False
end;

Procedure NoIconsLabelOnClick (Sender: TObject);
begin
WizardForm.NoIconsCheck.Checked:=Not(WizardForm.NoIconsCheck.Checked)
end;

Procedure YesRadioOnClick (Sender: TObject);
begin
WizardForm.YesRadio.Checked:=True
end;

Procedure NoRadioOnClick (Sender: TObject);
begin
WizardForm.NoRadio.Checked:=True
end;

procedure WizardButtonOnClick(Sender: TObject);
var
Button: TButton;
begin
ButtonImage[TLabel(Sender).Tag].Left:=0
case TLabel(Sender).Tag of
bidBack: Button:=WizardForm.BackButton
bidNext: Button:=WizardForm.NextButton
bidCancel: Button:=WizardForm.CancelButton
end
Button.OnClick(Button)
end;

procedure BrowseButtonOnClick(Sender: TObject);
var
Button: TButton;
begin
ButtonImage[TLabel(Sender).Tag].Left:=0
case TLabel(Sender).Tag of
bidDirBrowse: Button:=WizardForm.DirBrowseButton
bidGroupBrowse: Button:=WizardForm.GroupBrowseButton
end
Button.OnClick(Button)
end;

procedure WizardButtonMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
ButtonImage[TLabel(Sender).Tag].Left:=-ButtonWidth
end;

procedure WizardButtonMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
ButtonImage[TLabel(Sender).Tag].Left:=0
end;

procedure BrowseButtonMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
ButtonImage[TLabel(Sender).Tag].Left:=-ButtonWidth
end;

procedure BrowseButtonMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
ButtonImage[TLabel(Sender).Tag].Left:=0
end;

procedure LoadWizardButtonImage(AButton: TButton; AButtonIndex: integer);
begin
WizardButtonPanel:=TPanel.Create(WizardForm)
WizardButtonPanel.Left:=AButton.Left
WizardButtonPanel.Top:=AButton.Top
WizardButtonPanel.Width:=AButton.Width
WizardButtonPanel.Height:=AButton.Height
WizardButtonPanel.Tag:=AButtonIndex
WizardButtonPanel.Parent:=AButton.Parent
ButtonPanel[AButtonIndex]:=WizardButtonPanel

WizardButtonImage:=TBitmapImage.Create(WizardForm)
WizardButtonImage.Autosize:=True
WizardButtonImage.Enabled:=False
WizardButtonImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\{#ButtonImage}'))
WizardButtonImage.Parent:=WizardButtonPanel
ButtonImage[AButtonIndex]:=WizardButtonImage

WizardButtonLabel:=TLabel.Create(WizardForm)
WizardButtonLabel.Tag:=AButtonIndex
WizardButtonLabel.Width:=WizardButtonPanel.Width
WizardButtonLabel.Height:=WizardButtonPanel.Height
WizardButtonLabel.Autosize:=False
WizardButtonLabel.Transparent:=True
WizardButtonLabel.OnClick:=@WizardButtonOnClick
WizardButtonLabel.OnDblClick:=@WizardButtonOnClick
WizardButtonLabel.OnMouseDown:=@WizardButtonMouseDown
WizardButtonLabel.OnMouseUp:=@WizardButtonMouseUp
WizardButtonLabel.Parent:=WizardButtonPanel

WizardButtonLabel2:=TLabel.Create(WizardForm)
WizardButtonLabel2.Top:=6
WizardButtonLabel2.Width:=WizardButtonPanel.Width
WizardButtonLabel2.Height:=WizardButtonPanel.Height
WizardButtonLabel2.Autosize:=False
WizardButtonLabel2.Alignment:=taCenter
WizardButtonLabel2.Tag:=AButtonIndex
WizardButtonLabel2.Transparent:=True
WizardButtonLabel2.Font.Color:=ButtonFontColor
WizardButtonLabel2.Caption:=AButton.Caption
WizardButtonLabel2.OnClick:=@WizardButtonOnClick
WizardButtonLabel2.OnDblClick:=@WizardButtonOnClick
WizardButtonLabel2.OnMouseDown:=@WizardButtonMouseDown
WizardButtonLabel2.OnMouseUp:=@WizardButtonMouseUp
WizardButtonLabel2.Parent:=WizardButtonPanel
ButtonLabel[AButtonIndex]:=WizardButtonLabel2
end;

procedure LoadBrowseButtonImage(AButton: TButton; AButtonIndex: integer);
begin
BrowseButtonPanel:=TPanel.Create(WizardForm)
BrowseButtonPanel.Left:=AButton.Left
BrowseButtonPanel.Top:=AButton.Top
BrowseButtonPanel.Width:=AButton.Width
BrowseButtonPanel.Height:=AButton.Height
BrowseButtonPanel.Tag:=AButtonIndex
BrowseButtonPanel.Parent:=AButton.Parent
ButtonPanel[AButtonIndex]:=BrowseButtonPanel

BrowseButtonImage:=TBitmapImage.Create(WizardForm)
BrowseButtonImage.Top:=-ButtonHeight
BrowseButtonImage.Autosize:=True
BrowseButtonImage.Enabled:=False
BrowseButtonImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\{#ButtonImage}'))
BrowseButtonImage.Parent:=BrowseButtonPanel
ButtonImage[AButtonIndex]:=BrowseButtonImage

BrowseButtonLabel:=TLabel.Create(WizardForm)
BrowseButtonLabel.Tag:=AButtonIndex
BrowseButtonLabel.Width:=BrowseButtonPanel.Width
BrowseButtonLabel.Height:=BrowseButtonPanel.Height
BrowseButtonLabel.Autosize:=False
BrowseButtonLabel.Transparent:=True
BrowseButtonLabel.OnClick:=@BrowseButtonOnClick
BrowseButtonLabel.OnDblClick:=@BrowseButtonOnClick
BrowseButtonLabel.OnMouseDown:=@BrowseButtonMouseDown
BrowseButtonLabel.OnMouseUp:=@BrowseButtonMouseUp
BrowseButtonLabel.Parent:=BrowseButtonPanel

BrowseButtonLabel2:=TLabel.Create(WizardForm)
BrowseButtonLabel2.Top:=6
BrowseButtonLabel2.Width:=BrowseButtonPanel.Width
BrowseButtonLabel2.Height:=BrowseButtonPanel.Height
BrowseButtonLabel2.Autosize:=False
BrowseButtonLabel2.Alignment:=taCenter
BrowseButtonLabel2.Tag:=AButtonIndex
BrowseButtonLabel2.Transparent:=True
BrowseButtonLabel2.Font.Color:=ButtonFontColor
BrowseButtonLabel2.Caption:=AButton.Caption
BrowseButtonLabel2.OnClick:=@BrowseButtonOnClick
BrowseButtonLabel2.OnDblClick:=@BrowseButtonOnClick
BrowseButtonLabel2.OnMouseDown:=@BrowseButtonMouseDown
BrowseButtonLabel2.OnMouseUp:=@BrowseButtonMouseUp
BrowseButtonLabel2.Parent:=BrowseButtonPanel
ButtonLabel[AButtonIndex]:=BrowseButtonLabel2
end;

procedure UpdateWizardButton(AButton: TButton;AButtonIndex: integer);
begin
ButtonLabel[AButtonIndex].Caption:=AButton.Caption
ButtonPanel[AButtonIndex].Visible:=AButton.Visible
ButtonLabel[AButtonIndex].Enabled:=Abutton.Enabled
end;

procedure UpdateButton();
begin
UpdateWizardButton(WizardForm.BackButton,bidBack)
UpdateWizardButton(WizardForm.NextButton,bidNext)
UpdateWizardButton(WizardForm.CancelButton,bidCancel)
end;

Procedure InitializeSkin();
begin
with WizardForm do
with OuterNotebook do
with InnerPage do
with InnerNotebook do
Color:=PageColor

ExtractTemporaryFile('{#ButtonImage}')

//WizardForm
WizardForm.Bevel.Hide
WizardForm.Bevel1.Hide
WizardForm.MainPanel.Hide
WizardForm.WizardSmallBitmapImage.Hide
WizardForm.WizardBitmapImage2.Hide
WizardForm.BeveledLabel.Hide
WizardForm.BeveledLabel.Left:=700

WizardForm.ClientWidth:=690
WizardForm.ClientHeight:=496
WizardForm.Center

WizardForm.WizardBitmapImage.Left:=0
WizardForm.WizardBitmapImage.Top:=0
WizardForm.WizardBitmapImage.Width:=690
WizardForm.WizardBitmapImage.Height:=496
WizardForm.WizardBitmapImage.Parent:=WizardForm

WizardForm.BackButton.Left:=293
WizardForm.BackButton.Top:=462
WizardForm.BackButton.Width:=ButtonWidth
WizardForm.BackButton.Height:=ButtonHeight

WizardForm.NextButton.Left:=375
WizardForm.NextButton.Top:=462
WizardForm.NextButton.Width:=ButtonWidth
WizardForm.NextButton.Height:=ButtonHeight

WizardForm.CancelButton.Left:=600
WizardForm.CancelButton.Top:=462
WizardForm.CancelButton.Width:=ButtonWidth
WizardForm.CancelButton.Height:=ButtonHeight

WizardForm.OuterNotebook.Left:=200
WizardForm.OuterNotebook.Top:=80
WizardForm.OuterNotebook.Width:=460
WizardForm.OuterNotebook.Height:=354

WizardForm.InnerNotebook.Left:=0
WizardForm.InnerNotebook.Top:=0
WizardForm.InnerNotebook.Width:=460
WizardForm.InnerNotebook.Height:=354

WizardForm.PageNameLabel.Left:=15
WizardForm.PageNameLabel.Top:=7
WizardForm.PageNameLabel.Autosize:=True
WizardForm.PageNameLabel.WordWrap:=False
WizardForm.PageNameLabel.Color:=MainTextBackColor
WizardForm.PageNameLabel.Font.Color:=FontColor
WizardForm.PageNameLabel.Parent:=WizardForm

WizardForm.PageDescriptionLabel.Left:=25
WizardForm.PageDescriptionLabel.Top:=25
WizardForm.PageDescriptionLabel.Autosize:=True
WizardForm.PageDescriptionLabel.WordWrap:=False
WizardForm.PageDescriptionLabel.Color:=MainTextBackColor
WizardForm.PageDescriptionLabel.Font.Color:=FontColor
WizardForm.PageDescriptionLabel.Parent:=WizardForm

BeveledLabel:=TLabel.Create(WizardForm)
BeveledLabel.Left:=10
BeveledLabel.Top:=468
BeveledLabel.Transparent:=True
BeveledLabel.Font.Color:=BeveledLabelFontColor
BeveledLabel.Caption:=WizardForm.BeveledLabel.Caption
BeveledLabel.Parent:=WizardForm

//wpWelcome
WizardForm.WelcomePage.Color:=PageColor

WizardForm.WelcomeLabel1.Left:=0
WizardForm.WelcomeLabel1.Top:=110
WizardForm.WelcomeLabel1.Width:=465
WizardForm.WelcomeLabel1.Height:=28
WizardForm.WelcomeLabel1.Font.Size:=8
WizardForm.WelcomeLabel1.Font.Color:=FontColor

WizardForm.WelcomeLabel2.Left:=0
WizardForm.WelcomeLabel2.Top:=150
WizardForm.WelcomeLabel2.Width:=465
WizardForm.WelcomeLabel2.Height:=200
WizardForm.WelcomeLabel2.Font.Color:=FontColor

//wpLicense
WizardForm.LicenseLabel1.Left:=0
WizardForm.LicenseLabel1.Top:=0
WizardForm.LicenseLabel1.Width:=460
WizardForm.LicenseLabel1.Height:=28
WizardForm.LicenseLabel1.Font.Color:=FontColor

WizardForm.LicenseMemo.Left:=0
WizardForm.LicenseMemo.Top:=38
WizardForm.LicenseMemo.Width:=460
WizardForm.LicenseMemo.Height:=266

WizardForm.LicenseAcceptedRadio.Left:=0
WizardForm.LicenseAcceptedRadio.Top:=318
WizardForm.LicenseAcceptedRadio.Width:=17
WizardForm.LicenseAcceptedRadio.Height:=17

LicenseAcceptedText:=TNewStatictext.Create(WizardForm)
LicenseAcceptedText.Left:=17
LicenseAcceptedText.Top:=321
LicenseAcceptedText.Font.Color:=FontColor
LicenseAcceptedText.Caption:=WizardForm.LicenseAcceptedRadio.Caption
LicenseAcceptedText.OnClick:=@LicenseAcceptedOnClick
LicenseAcceptedText.Parent:=WizardForm.LicensePage

WizardForm.LicenseNotAcceptedRadio.Left:=0
WizardForm.LicenseNotAcceptedRadio.Top:=338
WizardForm.LicenseNotAcceptedRadio.Width:=17
WizardForm.LicenseNotAcceptedRadio.Height:=17

LicenseNotAcceptedText:=TNewStatictext.Create(WizardForm)
LicenseNotAcceptedText.Left:=17
LicenseNotAcceptedText.Top:=341
LicenseNotAcceptedText.Font.Color:=FontColor
LicenseNotAcceptedText.Caption:=WizardForm.LicenseNotAcceptedRadio.Caption
LicenseNotAcceptedText.OnClick:=@LicenseNotAcceptedOnClick
LicenseNotAcceptedText.Parent:=WizardForm.LicensePage

//wpPassword
WizardForm.PasswordLabel.Left:=0
WizardForm.PasswordLabel.Top:=0
WizardForm.PasswordLabel.Width:=460
WizardForm.PasswordLabel.Height:=28
WizardForm.PasswordLabel.Font.Color:=FontColor

WizardForm.PasswordEditLabel.Left:=0
WizardForm.PasswordEditLabel.Top:=34
WizardForm.PasswordEditLabel.Width:=460
WizardForm.PasswordEditLabel.Height:=14
WizardForm.PasswordEditLabel.Font.Color:=FontColor

WizardForm.PasswordEdit.Left:=0
WizardForm.PasswordEdit.Top:=50
WizardForm.PasswordEdit.Width:=460
WizardForm.PasswordEdit.Height:=21
WizardForm.PasswordEdit.Color:=$ffffff
WizardForm.PasswordEdit.Font.Color:=$000000

//wpInfoBefore
WizardForm.InfoBeforeClickLabel.Left:=0
WizardForm.InfoBeforeClickLabel.Top:=0
WizardForm.InfoBeforeClickLabel.Width:=460
WizardForm.InfoBeforeClickLabel.Height:=14
WizardForm.InfoBeforeClickLabel.Font.Color:=FontColor

WizardForm.InfoBeforeMemo.Left:=0
WizardForm.InfoBeforeMemo.Top:=24
WizardForm.InfoBeforeMemo.Width:=460
WizardForm.InfoBeforeMemo.Height:=327

//wpUserInfo
WizardForm.UserInfoNameLabel.Left:=0
WizardForm.UserInfoNameLabel.Top:=0
WizardForm.UserInfoNameLabel.Width:=460
WizardForm.UserInfoNameLabel.Height:=14
WizardForm.UserInfoNameLabel.Font.Color:=FontColor

WizardForm.UserInfoNameEdit.Left:=0
WizardForm.UserInfoNameEdit.Top:=16
WizardForm.UserInfoNameEdit.Width:=460
WizardForm.UserInfoNameEdit.Height:=21
WizardForm.UserInfoNameEdit.Color:=$ffffff
WizardForm.UserInfoNameEdit.Font.Color:=$000000

WizardForm.UserInfoOrgLabel.Left:=0
WizardForm.UserInfoOrgLabel.Top:=52
WizardForm.UserInfoOrgLabel.Width:=460
WizardForm.UserInfoOrgLabel.Height:=14
WizardForm.UserInfoOrgLabel.Font.Color:=FontColor

WizardForm.UserInfoOrgEdit.Left:=0
WizardForm.UserInfoOrgEdit.Top:=68
WizardForm.UserInfoOrgEdit.Width:=460
WizardForm.UserInfoOrgEdit.Height:=21
WizardForm.UserInfoOrgEdit.Color:=$ffffff
WizardForm.UserInfoOrgEdit.Font.Color:=$000000

WizardForm.UserInfoSerialLabel.Left:=0
WizardForm.UserInfoSerialLabel.Top:=104
WizardForm.UserInfoSerialLabel.Width:=460
WizardForm.UserInfoSerialLabel.Height:=14
WizardForm.UserInfoSerialLabel.Font.Color:=FontColor

WizardForm.UserInfoSerialEdit.Left:=0
WizardForm.UserInfoSerialEdit.Top:=120
WizardForm.UserInfoSerialEdit.Width:=460
WizardForm.UserInfoSerialEdit.Height:=21
WizardForm.UserInfoSerialEdit.Color:=$ffffff
WizardForm.UserInfoSerialEdit.Font.Color:=$000000

//wpSelectDir
WizardForm.SelectDirBitmapImage.Hide

WizardForm.SelectDirLabel.Left:=0
WizardForm.SelectDirLabel.Top:=0
WizardForm.SelectDirLabel.Width:=460
WizardForm.SelectDirLabel.Height:=14
WizardForm.SelectDirLabel.Font.Color:=FontColor

WizardForm.SelectDirBrowseLabel.Left:=0
WizardForm.SelectDirBrowseLabel.Top:=24
WizardForm.SelectDirBrowseLabel.Width:=460
WizardForm.SelectDirBrowseLabel.Height:=28
WizardForm.SelectDirBrowseLabel.Font.Color:=FontColor

WizardForm.DirEdit.Left:=0
WizardForm.DirEdit.Top:=290
WizardForm.DirEdit.Width:=370
WizardForm.DirEdit.Height:=21
WizardForm.DirEdit.Color:=$ffffff
WizardForm.DirEdit.Font.Color:=$000000

WizardForm.DirBrowseButton.Left:=383
WizardForm.DirBrowseButton.Top:=289
WizardForm.DirBrowseButton.Width:=ButtonWidth
WizardForm.DirBrowseButton.Height:=ButtonHeight

WizardForm.DiskSpaceLabel.Left:=0
WizardForm.DiskSpaceLabel.Top:=340
WizardForm.DiskSpaceLabel.Width:=460
WizardForm.DiskSpaceLabel.Height:=14
WizardForm.DiskSpaceLabel.Font.Color:=FontColor

//wpSelectComponents
WizardForm.SelectComponentsLabel.Left:=0
WizardForm.SelectComponentsLabel.Top:=0
WizardForm.SelectComponentsLabel.Width:=460
WizardForm.SelectComponentsLabel.Height:=14
WizardForm.SelectComponentsLabel.Font.Color:=FontColor

WizardForm.TypesCombo.Left:=0
WizardForm.TypesCombo.Top:=24
WizardForm.TypesCombo.Width:=460
WizardForm.TypesCombo.Height:=21
WizardForm.TypesCombo.Color:=$ffffff
WizardForm.TypesCombo.Font.Color:=$000000

WizardForm.ComponentsList.Left:=0
WizardForm.ComponentsList.Top:=48
WizardForm.ComponentsList.Width:=460
WizardForm.ComponentsList.Height:=275
WizardForm.ComponentsList.Color:=$ffffff
WizardForm.ComponentsList.Font.Color:=$000000

WizardForm.ComponentsDiskSpaceLabel.Left:=0
WizardForm.ComponentsDiskSpaceLabel.Top:=340
WizardForm.ComponentsDiskSpaceLabel.Width:=417
WizardForm.ComponentsDiskSpaceLabel.Height:=14
WizardForm.ComponentsDiskSpaceLabel.Font.Color:=FontColor

//wpSelectProgramGroup
WizardForm.SelectGroupBitmapImage.Hide

WizardForm.SelectStartMenuFolderLabel.Left:=0
WizardForm.SelectStartMenuFolderLabel.Top:=0
WizardForm.SelectStartMenuFolderLabel.Width:=460
WizardForm.SelectStartMenuFolderLabel.Height:=14
WizardForm.SelectStartMenuFolderLabel.Font.Color:=FontColor

WizardForm.SelectStartMenuFolderBrowseLabel.Left:=0
WizardForm.SelectStartMenuFolderBrowseLabel.Top:=24
WizardForm.SelectStartMenuFolderBrowseLabel.Width:=460
WizardForm.SelectStartMenuFolderBrowseLabel.Height:=28
WizardForm.SelectStartMenuFolderBrowseLabel.Font.Color:=FontColor

WizardForm.GroupEdit.Left:=0
WizardForm.GroupEdit.Top:=290
WizardForm.GroupEdit.Width:=370
WizardForm.GroupEdit.Height:=21
WizardForm.GroupEdit.Color:=$ffffff
WizardForm.GroupEdit.Font.Color:=$000000

WizardForm.GroupBrowseButton.Left:=383
WizardForm.GroupBrowseButton.Top:=289
WizardForm.GroupBrowseButton.Width:=ButtonWidth
WizardForm.GroupBrowseButton.Height:=ButtonHeight

WizardForm.NoIconsCheck.Left:=0
WizardForm.NoIconsCheck.Top:=337
WizardForm.NoIconsCheck.Width:=17
WizardForm.NoIconsCheck.Height:=17
WizardForm.NoIconsCheck.Visible:=True

NoIconsText:=TNewStatictext.Create(WizardForm)
NoIconsText.Left:=17
NoIconsText.Top:=340
NoIconsText.Font.Color:=FontColor
NoIconsText.OnClick:=@NoIconsLabelOnClick
NoIconsText.Caption:=WizardForm.NoIconsCheck.Caption
NoIconsText.Parent:=WizardForm.SelectProgramGroupPage

//wpSelectTasks
WizardForm.SelectTasksLabel.Left:=0
WizardForm.SelectTasksLabel.Top:=0
WizardForm.SelectTasksLabel.Width:=460
WizardForm.SelectTasksLabel.Height:=28
WizardForm.SelectTasksLabel.Font.Color:=FontColor

WizardForm.TasksList.Left:=0
WizardForm.TasksList.Top:=34
WizardForm.TasksList.Width:=460
WizardForm.TasksList.Height:=317
WizardForm.TasksList.Color:=PageColor
WizardForm.TasksList.Font.Color:=FontColor

//wpReady
WizardForm.ReadyLabel.Left:=0
WizardForm.ReadyLabel.Top:=0
WizardForm.ReadyLabel.Width:=460
WizardForm.ReadyLabel.Height:=28
WizardForm.ReadyLabel.Font.Color:=FontColor

WizardForm.ReadyMemo.Left:=0
WizardForm.ReadyMemo.Top:=34
WizardForm.ReadyMemo.Width:=460
WizardForm.ReadyMemo.Height:=317
WizardForm.ReadyMemo.Color:=PageColor
WizardForm.ReadyMemo.Font.Color:=FontColor

//wpInstalling
WizardForm.StatusLabel.Left:=0
WizardForm.StatusLabel.Top:=0
WizardForm.StatusLabel.Width:=460
WizardForm.StatusLabel.Height:=16
WizardForm.StatusLabel.Font.Color:=FontColor

WizardForm.FilenameLabel.Left:=0
WizardForm.FilenameLabel.Top:=16
WizardForm.FilenameLabel.Width:=460
WizardForm.FilenameLabel.Height:=16
WizardForm.FilenameLabel.Font.Color:=FontColor

WizardForm.ProgressGauge.Left:=0
WizardForm.ProgressGauge.Top:=42
WizardForm.ProgressGauge.Width:=460
WizardForm.ProgressGauge.Height:=21

//wpInfoAfter
WizardForm.InfoAfterClickLabel.Left:=0
WizardForm.InfoAfterClickLabel.Top:=0
WizardForm.InfoAfterClickLabel.Width:=460
WizardForm.InfoAfterClickLabel.Height:=14
WizardForm.InfoAfterClickLabel.Font.Color:=FontColor

WizardForm.InfoAfterMemo.Left:=0
WizardForm.InfoAfterMemo.Top:=24
WizardForm.InfoAfterMemo.Width:=460
WizardForm.InfoAfterMemo.Height:=327

//wpFinished
WizardForm.FinishedPage.Color:=PageColor

WizardForm.FinishedHeadingLabel.Left:=0
WizardForm.FinishedHeadingLabel.Top:=79
WizardForm.FinishedHeadingLabel.Width:=460
WizardForm.FinishedHeadingLabel.Height:=24
WizardForm.FinishedHeadingLabel.Font.Size:=8
WizardForm.FinishedHeadingLabel.Font.Color:=FontColor

WizardForm.FinishedLabel.Left:=0
WizardForm.FinishedLabel.Top:=119
WizardForm.FinishedLabel.Width:=460
WizardForm.FinishedLabel.Height:=53
WizardForm.FinishedLabel.Font.Color:=FontColor

WizardForm.RunList.Left:=0
WizardForm.RunList.Top:=199
WizardForm.RunList.Width:=460
WizardForm.RunList.Height:=149
WizardForm.RunList.Font.Color:=FontColor

WizardForm.YesRadio.Left:=0
WizardForm.YesRadio.Top:=199
WizardForm.YesRadio.Width:=460
WizardForm.YesRadio.Height:=17
WizardForm.YesRadio.OnClick:=@YesRadioOnClick

YesRadioText:=TNewStatictext.Create(WizardForm)
YesRadioText.Left:=16
YesRadioText.Top:=2
YesRadioText.Width:=445
YesRadioText.Height:=15
YesRadioText.Font.Color:=FontColor
YesRadioText.Caption:=WizardForm.YesRadio.Caption
YesRadioText.OnClick:=@YesRadioOnClick
YesRadioText.Parent:=WizardForm.YesRadio

WizardForm.NoRadio.Left:=0
WizardForm.NoRadio.Top:=227
WizardForm.NoRadio.Width:=460
WizardForm.NoRadio.Height:=17
WizardForm.NoRadio.OnClick:=@NoRadioOnClick

NoRadioText:=TNewStatictext.Create(WizardForm)
NoRadioText.Left:=16
NoRadioText.Top:=2
NoRadioText.Width:=445
NoRadioText.Height:=15
NoRadioText.Font.Color:=FontColor
NoRadioText.Caption:=WizardForm.NoRadio.Caption
NoRadioText.OnClick:=@NoRadioOnClick
NoRadioText.Parent:=WizardForm.NoRadio

LoadWizardButtonImage(WizardForm.BackButton,bidBack)
LoadWizardButtonImage(WizardForm.NextButton,bidNext)
LoadWizardButtonImage(WizardForm.CancelButton,bidCancel)
LoadBrowseButtonImage(WizardForm.DirBrowseButton,bidDirBrowse)
LoadBrowseButtonImage(WizardForm.GroupBrowseButton,bidGroupBrowse)
end;
Автор: iTASmania_Inc
Дата сообщения: 11.10.2007 20:59
Andrey_Wlodimirovich
Так правильно, что в разделе описания переменных написано?
Наверное, LicenseAcceptedText определяется как TNewStaticText, а надо TLabel!

Добавлено:
P.S.: по-моему, в руководстве от Kindly есть исходный код самого инсталлятора...
Автор: Andrey_Wlodimirovich
Дата сообщения: 11.10.2007 22:31
iTASmania_Inc
Точно в SourceSсript`ах лежит .. пасиб за наводку .. (много времени сэкономил )

Добавлено:
Почти все сделал, осталось одно, на стандартном скине я делал так: во время установки окно уменьшалось и смещалось в левый нижний угол (это [more=(№1)]
Код: [Setup]
WindowVisible=yes
WindowResizable=no
WindowShowCaption=no

[Files]
Source: C:\isxbb.dll; DestDir: {tmp}; Flags: dontcopy
Source: C:\1.jpg; DestDir: {tmp}; Flags: dontcopy
//Это файлы для слайд-шоу (может быть больше)
Source: C:\2.jpg; DestDir: {tmp}; Flags: dontcopy
Source: C:\3.jpg; DestDir: {tmp}; Flags: dontcopy
Source: C:\4.jpg; DestDir: {tmp}; Flags: dontcopy


Код:
const
BACKGROUND=6;
TIMER=16;

function isxbb_AddImage(Image: PChar; Flags: Cardinal): Integer;
external 'isxbb_AddImage@files:isxbb.dll stdcall';

function isxbb_Init(hWnd: Integer): Integer;
external 'isxbb_Init@files:isxbb.dll stdcall';

function isxbb_StartTimer(Seconds: Integer; Flags: Cardinal): Integer;
external 'isxbb_StartTimer@files:isxbb.dll stdcall';

function isxbb_KillTimer(Flags: Cardinal): Integer;
external 'isxbb_KillTimer@files:isxbb.dll stdcall';

procedure InitializeWizard();
begin
ExtractTemporaryFile('1.jpg');
isxbb_AddImage(ExpandConstant('{tmp}')+'\1.jpg',BACKGROUND);
isxbb_Init(StrToInt(ExpandConstant('{hwnd}')));
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
//В начале этапа установки запускаем слайд-шоу
if CurStep=ssInstall
then
begin
ExtractTemporaryFile('2.jpg');
ExtractTemporaryFile('3.jpg');
ExtractTemporaryFile('4.jpg');
isxbb_AddImage(ExpandConstant('{tmp}')+'\2.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\3.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\4.jpg',BACKGROUND or TIMER);
isxbb_Init(StrToInt(ExpandConstant('{hwnd}')));
//Таймер показа изображений, в секундах
isxbb_StartTimer(3,BACKGROUND)
end
//На завершающем этапе останавливаем таймер, при этом возвращается фоновое изображение по умолчанию
else if CurStep=ssPostInstall then
isxbb_KillTimer(BACKGROUND);
end;
Автор: 2Dem
Дата сообщения: 12.10.2007 02:48
Люди подскажите, а возможно ли при установке (в ХР или Висте) автоматически задавать для файла режим совместимости?
Автор: Chuvakstepan
Дата сообщения: 12.10.2007 13:20

Цитата:
Люди подскажите, а возможно ли при установке (в ХР или Висте) автоматически задавать для файла режим совместимости?

Очень интересно, кстати. Присоединяюсь к вопросу, только не для файла, допустим, а для строки в Registry
Автор: Victor_Dobrov
Дата сообщения: 12.10.2007 14:07
Corona Skin & Check System Requirements - обложка для Inno Setup с проверкой системных требований.
Исправил ошибку: при повторном запуске процедура деинициализации обращалась к несуществующей WizardForm.
Добавлен ключ командной строки /NOMUSIC, который отключает автопроигрывание музыки при запуске.
Автор: Cryzer
Дата сообщения: 12.10.2007 20:30
Victor_Dobrov
Предложенная вами (несколько постов выше) схема мне не совсем удобна. Никак разве нельзя задействовать одновременно 2 компонента в "Components:"?
Чем отличается просто поставить между 2-умя компонентами пробел и написать "AND" между ними?
Автор: 2Dem
Дата сообщения: 12.10.2007 23:37

Цитата:
Люди подскажите, а возможно ли при установке (в ХР или Висте) автоматически задавать для файла режим совместимости?

Уже не надо. Сам разобрался. Если кому понадобится, то вот пример из скрипта для Карбона, чтобы на Висте работал в режиме совместимости с Win98.
Root: HKCU; SubKey: "Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers"; ValueType: string; ValueName: "{app}\nfsc.exe"; ValueData: "WIN98"

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Поиск в WinDjView


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.