Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 3]
Gnom_aka_Lexander
07-04-2011, 22:25
LordSP,
[Setup]
DiskSpanning=true
DiskSliceSize=1566000000
SlicesPerDisk=3 так будет не Setup-1.bin, а Setup-1а.bin, Setup-2а.bin, Setup-3а.bin. На другой диск будут файлы Setup-1b.bin, Setup-2b.bin, Setup-3b.bin -и так далее, по переименованию и смене расширения - уже флуд, я недавно отвечал.
Здесь всего 1265 сообщений, не нужно преувеличивать. Отлистай назад на пару страниц, я отвечал недавно.
Лександер,
Так дай ссылку,где отвечал,какой флуд!Здесь 1000000 сообщений!!
Лександер,
и еще как мне в этом противном коде: [Setup]
AppName=My Program
AppVerName=My Program ver.1.5
DefaultDirName={pf}\My Program
[Code]
const
MB_ICONINFORMATION = $40;
MB_ICONEXCLAMATION = $30;
MB_ICONQUESTION = $20;
MB_ICONSTOP = $10;
MB_ICONNONE = $10;
MB_SYSTEMMODAL = $1000;
function MessageBox(hWnd: Integer; lpText, lpCaption: String; uType: Cardinal): Integer;
external 'MessageBoxA@user32.dll stdcall';
procedure CancelButtonClick(CurPage: Integer; var Cancel, Confirm: Boolean);
var
hWnd: Integer;
begin
Cancel:=False;
Confirm:=False;
hWnd := StrToInt(ExpandConstant('{wizardhwnd}'));
if MessageBox(hWnd, 'The setup is not finished! Do you really want to abort?', 'Exit from Installer', MB_YESNO or $30 + MB_SYSTEMMODAL) = idYes
then
Cancel:=true;
end;
Сделать чтобы и диалоговое окно было поверх окон,и значок в этом окне используемый user32.dll/100 не был виден,или заменить....
В этом скрипте все нормально,а вот в другом не хочет поверх окон делать,если прописать так:
if MessageBox(hWnd, 'The setup is not finished! Do you really want to abort?', 'Exit from Installer', MB_YESNO or $1000 + MB_SYSTEMMODAL + $40 MB_ICONFORMATION) = idYes .то окно становиться беззвучным,но знвчок пропадает,только не в этом скрипте,а в другом....вообщем есть ли возможность его сменить?
Этот скрипт хочу совместить с другим,где окно информации...слева в угу "О программе"....,вот только работает с отображением значка :-(
Может как то индекс иконки можно указать?
Gnom_aka_Lexander
07-04-2011, 22:45
MB_ICONINFORMATION = $40;
MB_ICONEXCLAMATION = $30;
MB_ICONQUESTION = $20;
MB_ICONSTOP = $10;
MB_ICONNONE = $10;
MB_SYSTEMMODAL = $1000; »
индексы иконок. а вот в другом не хочет поверх окон делать »
соединил криво. и убирай портянки под спойлер. А то придет добрый модер и уберет пост целиком :)
Лександер,
индексы иконок. »
Это я знаю,а как сделать отобраджение иконки вместо белого окошечка,соединив так:
MB_YESNO or $40 + MB_ICONFORMATION //если оставить так,то появляется бклое окошечко на форме.
MB_YESNO or $1000 + MB_SYSTEMMODAL)// если так, то окошко скрывается за формой,и невозможно нажать.)
MB_YESNO or $1000 + MB_SYSTEMMODAL + $40 MB_ICONFORMATION)//ну,а если так,то пропадает звук при действии...
Помоги.
Да и вообще,что мучатся у тебя случаем нет,скрипта,отображающего окно инсталлятора и конечно же диалоговые окна и ошибки,поверх всех окон Windows?
Gnom_aka_Lexander
07-04-2011, 23:46
LordSP, все, что у меня есть - лежит здесь: готовые решения (http://innoultra.ru/?page_id=18), качай архив, который называется пачка скриптов, и ройся, также поройся на форуме, на твой вопрос наверняка есть ответ :)
лежит здесь: готовые решения »
Спасибо ОГРОМНОЕ, очень пригодилось!!!
Подскажите как через секцию RUN на финишной странице инсталлятора сделать запрос на запуск игры, ато я уже забыл :)
R.i.m.s.k.y.
08-04-2011, 13:05
Подскажите как через секцию RUN на финишной странице инсталлятора сделать запрос на запуск игры, ато я уже забыл »
Флаг postinstall
Filename: {app}\game.exe; Description: Игра; Flags: skipifsilent postinstall
Подскажите как мне перемещать кнопки
Всем доброго времени суток!!!
у меня возникла небольшая проблема, 1) можно ли как нибуть убрать чёрный фон, закрывающий картинку на финальной странице инсталятора, как показано на скринфоте. И ещё, 2) можно ли изменить фон окна?
Вот сам скрипт:
function mciSendString(lpstrCommand: string; lpstrReturnString: string; uReturnLength:integer; hwndCallback:integer):integer;
external 'mciSendStringA@winmm.dll stdcall';
procedure LogoOnClick(Sender: TObject);
var ResCode: Integer;
begin
ShellExec('', 'http://torrent.lurenet.lg.ua', '' , '', SW_SHOW, ewNoWait, ResCode)
end;
var
WelcomeLabel1, WelcomeLabel2, FinishedLabel, FinishedHeadingLabel: TLabel;
const
Color = clblack;
const
GWL_STYLE = (-16);
WS_CAPTION = $C00000;
function GetWindowLong(Wnd: HWnd; Index: Integer): Longint;
external 'GetWindowLongA@user32.dll stdcall';
function SetWindowLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint;
external 'SetWindowLongA@user32.dll stdcall';
procedure InitializeWizard();
var
BtnPanel: TPanel;
BtnImage: TBitmapImage;
begin
ExtractTemporaryFile('Button.bmp')
BtnPanel:=TPanel.Create(WizardForm)
with BtnPanel do begin
Left:=20
Top:=325
Width:=200
Height:=30
Cursor:=crHand
OnClick:=@logoOnClick
Parent:=WizardForm
end
BtnImage:=TBitmapImage.Create(WizardForm)
with BtnImage do begin
AutoSize:=True;
Enabled:=False;
Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\Button.bmp')
Parent:=BtnPanel
end
begin
WizardForm.WizardBitmapImage.Width := ScaleX(497); //êîîðäèíàòû ïîïðàâèøü êàê òå íàäî)
WizardForm.WizardBitmapImage.Height := ScaleX(323);
////////çàâåðøåíèå
WizardForm.WizardBitmapImage2.Width := ScaleX(497);
WizardForm.WizardBitmapImage2.Height := ScaleX(323);
begin
ExtractTemporaryFile(ExpandConstant('ops.mp3'))
mciSendString(ExpandConstant('play {tmp}\ops.mp3 repeat'),'NULL',0,0)
begin
ExtractTemporaryFile('2.bmp');
WizardForm.WizardBitmapImage.Width:= ScaleX(497);
WizardForm.WizardBitmapImage2.Width:= ScaleX(497);
WizardForm.WizardBitmapImage2.Bitmap.LoadFromFile(ExpandConstant('{tmp}\2.bmp'));
WelcomeLabel1:= TLabel.Create(WizardForm);
WelcomeLabel1.AutoSize:= False;
with WizardForm.WelcomeLabel1 do
WelcomeLabel1.SetBounds(Left, Top, Width, Height);
WelcomeLabel1.Font:= WizardForm.WelcomeLabel1.Font
WelcomeLabel1.Font.Color:= clWhite;
WelcomeLabel1.Transparent:= True;
WelcomeLabel1.WordWrap:= true;
WelcomeLabel1.Caption:= WizardForm.WelcomeLabel1.Caption;
WelcomeLabel1.Parent:= WizardForm.WelcomePage
WelcomeLabel2:= TLabel.Create(WizardForm);
WelcomeLabel2.AutoSize:= False;
with WizardForm.WelcomeLabel2 do
WelcomeLabel2.SetBounds(Left, Top, Width, Height);
WelcomeLabel2.Font:= WizardForm.WelcomeLabel2.Font
WelcomeLabel2.Font.Color:= clWhite;
WelcomeLabel2.Transparent:= True;
WelcomeLabel2.WordWrap:= true;
WelcomeLabel2.Caption:= WizardForm.WelcomeLabel2.Caption;
WelcomeLabel2.Parent:= WizardForm.WelcomePage
FinishedHeadingLabel:= TLabel.Create(WizardForm);
FinishedHeadingLabel.AutoSize:= False;
with WizardForm.FinishedHeadingLabel do
FinishedHeadingLabel.SetBounds(Left, Top, Width, Height);
FinishedHeadingLabel.Font:= WizardForm.FinishedHeadingLabel.Font
FinishedHeadingLabel.Font.Color:= clWhite;
FinishedHeadingLabel.Transparent:= True;
FinishedHeadingLabel.WordWrap:= true;
FinishedHeadingLabel.Caption:= WizardForm.FinishedHeadingLabel.Caption;
FinishedHeadingLabel.Parent:= WizardForm.FinishedPage
FinishedLabel:= TLabel.Create(WizardForm);
FinishedLabel.AutoSize:= False;
with WizardForm.FinishedLabel do
FinishedLabel.SetBounds(Left, Top, Width, Height);
FinishedLabel.Font:= WizardForm.FinishedLabel.Font
FinishedLabel.Font.Color:= clWhite;
FinishedLabel.Transparent:= True;
FinishedLabel.WordWrap:= true;
FinishedLabel.Caption:= WizardForm.FinishedLabel.Caption;
FinishedLabel.Parent:= WizardForm.FinishedPage
WizardForm.WelcomeLabel1.Hide;
WizardForm.WelcomeLabel2.Hide;
WizardForm.FinishedLabel.Hide;
WizardForm.FinishedHeadingLabel.Hide;
end;
begin
FinishedLabel.Caption:= WizardForm.FinishedLabel.Caption;
begin
WizardForm.Font.Color:=clLime;
WizardForm.Color:=Color;
WizardForm.WelcomePage.Color:=Color;
WizardForm.InnerPage.Color:=Color;
WizardForm.FinishedPage.Color:=Color;
WizardForm.LicensePage.Color:=Color;
WizardForm.PasswordPage.Color:=Color;
WizardForm.InfoBeforePage.Color:=Color;
WizardForm.UserInfoPage.Color:=Color;
WizardForm.SelectDirPage.Color:=Color;
WizardForm.SelectComponentsPage.Color:=Color;
WizardForm.SelectProgramGroupPage.Color:=Color;
WizardForm.SelectTasksPage.Color:=Color;
WizardForm.ReadyPage.Color:=Color;
WizardForm.PreparingPage.Color:=Color;
WizardForm.InstallingPage.Color:=clblack;
WizardForm.InfoAfterPage.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.DiskSpaceLabel.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.GroupEdit.Color:=Color;
WizardForm.PasswordLabel.Color:=Color;
WizardForm.PasswordEdit.Color:=Color;
WizardForm.PasswordEditLabel.Color:=Color;
WizardForm.ReadyMemo.Color:=Color;
WizardForm.TypesCombo.Color:=Color;
WizardForm.WelcomeLabel1.Color:=Color;
WizardForm.WelcomeLabel1.Font.Color:=clLime;
WizardForm.InfoBeforeClickLabel.Color:=Color;
WizardForm.MainPanel.Color:=Color;
WizardForm.PageNameLabel.Color:=Color;
WizardForm.PageDescriptionLabel.Color:=Color;
WizardForm.ReadyLabel.Color:=Color;
WizardForm.FinishedLabel.Color:=Color;
WizardForm.YesRadio.Color:=Color;
WizardForm.NoRadio.Color:=Color;
WizardForm.WelcomeLabel2.Color:=Color;
WizardForm.LicenseLabel1.Color:=Color;
WizardForm.InfoAfterClickLabel.Color:=Color;
WizardForm.ComponentsList.Color:=Color;
WizardForm.ComponentsDiskSpaceLabel.Color:=Color;
WizardForm.BeveledLabel.Color:=Color;
WizardForm.StatusLabel.Color:=Color;
WizardForm.FilenameLabel.Color:=Color;
WizardForm.SelectDirLabel.Color:=Color;
WizardForm.SelectStartMenuFolderLabel.Color:=Color;
WizardForm.SelectComponentsLabel.Color:=Color;
WizardForm.SelectTasksLabel.Color:=Color;
WizardForm.LicenseAcceptedRadio.Color:=Color;
WizardForm.LicenseNotAcceptedRadio.Color:=Color;
WizardForm.UserInfoNameLabel.Color:=Color;
WizardForm.UserInfoNameEdit.Color:=Color;
WizardForm.UserInfoOrgLabel.Color:=Color;
WizardForm.UserInfoOrgEdit.Color:=Color;
WizardForm.PreparingLabel.Color:=Color;
WizardForm.FinishedHeadingLabel.Color:=Color;
WizardForm.FinishedHeadingLabel.Font.Color:=clLime;
WizardForm.UserInfoSerialLabel.Color:=Color;
WizardForm.UserInfoSerialEdit.Color:=Color;
WizardForm.TasksList.Color:=Color;
WizardForm.RunList.Color:=Color;
WizardForm.SelectDirBrowseLabel.Color:=Color;
WizardForm.SelectStartMenuFolderBrowseLabel.Color:=Color;
WizardForm.PageNameLabel.Font.Color:=clLime;
WizardForm.Bevel.visible:=False;
WizardForm.BeveledLabel.visible:=False;
WizardForm.Bevel1.visible:=False;
begin
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
WizardForm.WizardSmallBitmapImage.Left := ScaleX(0);
WizardForm.WizardSmallBitmapImage.Top := ScaleY(0);
WizardForm.WizardSmallBitmapImage.Width := WizardForm.MainPanel.Width;
WizardForm.WizardSmallBitmapImage.Height := WizardForm.MainPanel.Height;
begin
SetWindowLong(WizardForm.Handle, GWL_STYLE,
GetWindowLong(WizardForm.Handle, GWL_STYLE) and not WS_CAPTION);
end;
end
end;
end;
end;
end;
end;
Зарание всем спасибо!!!
Gnom_aka_Lexander
08-04-2011, 18:41
slysoft, фон убрать нельзя, можно создать чекбокс с прозрачным лейбелом, который будет делать то-же, что и родной.
Edison007
08-04-2011, 19:36
Нужна помощь.
Как создать Мемо, в котором будет указан путь, и чтобы этот путь можно было перепечатывать?
У меня проблема с кнопками. Кнопка "Назад" отображаеться в неполном размере, и при етом надписи почти невидно. (Пробовал изменять размеры,опять перемещять, но все тоже) (см.рис) http://s60.radikal.ru/i170/1104/5e/252639c29022.jpg
#define NeedSize "5000000000"
#define NeedMem 512
;#define Components
;#define SecondProgressBar
;#define records
#define precomp04
;#define precomp038
;#define unrar
#include "isdone.iss"
[Setup]
AppName=Dragon Age 2
AppVerName=Dragon Age 2
DefaultDirName={pf}\Dragon Age 2
DefaultGroupName=EA Games\Dragon Age 2
OutputBaseFilename=Setup
AppPublisher=BIOWARE
SetupIconFile=.\icon.ico
VersionInfoCopyright=1.0
SolidCompression=yes
WizardSmallImageFile=WizModernSmallImage.bmp
#ifdef NeedSize
ExtraDiskSpaceRequired={#NeedSize}
#endif
[Languages]
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
[CustomMessages]
Finished1=Программа Dragon Age 2 [RePack] by Duktator22 установлена на Ваш компютер. Нажмите <Завершить>, чтобы выйти из программы установки.
Start1=Вас приветствует Мастер установки Dragon Age 2 [RePack] by Duktator22
start2=Програма установит Dragon Age 2 [RePack] by Duktator22 на ваш компютер. Рекомендуеться закрыть все прочие приложения перед тем как продолжить. Нажмите <Далее>, чтобы продолжить, или <Отмена>, чтобы выйти из программы установки.
[Icons]
Name: "{group}\Запустить игру"; Filename: "{app}\bin_ship\DragonAge2.exe"
Name: "{group}\{cm:UninstallProgram,Dragon Age 2}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\Dragon Age 2"; Filename: "{app}\bin_ship\DragonAge2.exe";
Name: "{commondesktop}\Dragon Age 2 настройки"; Filename: "{app}\DragonAge2Launcher.exe";
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Dragon Age 2"; Filename: "{app}\DragonAge2Launcher.exe";
[Tasks]
Name: VCCheck; Description: Установить Microsoft Visual C++
Name: PhysXCheck; Description: Установить Nvidia PhysX
Name: DirectXCheck; Description: Обновить Microsoft DirectX
Name: FXCheck; Description: Обновить Microsoft NET Framework
[Files]
Source: button.bmp; DestDir: {tmp}; Flags: dontcopy
Source: Logo.bmp; Flags: dontcopy
Source: PAPKA.bmp; Flags: dontcopy
Source: IMG1.bmp; Flags: dontcopy
Source: IMG2.bmp; Flags: dontcopy
[Run]
Filename: {src}\Redist\vcredist_x86.exe; Parameters: /q; StatusMsg: Устанавливаем Microsoft Visual C++ 2005 Redist...; Flags: skipifdoesntexist; Tasks: VCCheck; Check: CheckError
Filename: {src}\Redist\PhysX.exe; Parameters: /qn; StatusMsg: Устанавливаем Nvidia PhysX...; Flags: skipifdoesntexist; Tasks: PhysXCheck; Check: CheckError
Filename: {src}\Redist\DirectX\DXSETUP.exe; Parameters: /silent; StatusMsg: Устанавливаем Microsoft DirectX...; Flags: skipifdoesntexist; Tasks: DirectXCheck; Check: CheckError
Filename: {src}\Redist\dotNetFx35setup.exe; Parameters: /qn; StatusMsg: Устанавливаем Microsoft NET...; Flags: skipifdoesntexist; Tasks: PhysXCheck; Check: CheckError
Filename: {src}\setup-2.exe; WorkingDir: {src}; Parameters: "-o""{app}"" -y -aoa"; StatusMsg: Распаковка игровых архивов...; Flags: waituntilterminated;
Filename: {src}\setup-3.exe; WorkingDir: {src}; Parameters: "-o""{app}"" -y -aoa"; StatusMsg: Распаковка игровых архивов...; Flags: waituntilterminated;
[Code]
const
Color = clblack;
ButtonWidth = 80; //Указываем размер кнопок
ButtonHeight = 23;
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;
PageNameLabel, PageDescriptionLabel: TLabel;
MainImage : TBitmapImage;
FinishedImage: TBitmapImage;
WelcomeLabel1, WelcomeLabel2,FinishedLabel, FinishedHeadingLabel: TLabel; //Надписи на на странице приветствия и на финишной странице
procedure ButtonLabelClick(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
bidDirBrowse: Button:=WizardForm.DirBrowseButton
bidGroupBrowse: Button:=WizardForm.GroupBrowseButton
else
Exit
end
Button.OnClick(Button)
end;
procedure ButtonLabelMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if ButtonLabel[TLabel(Sender).Tag].Enabled then
ButtonImage[TLabel(Sender).Tag].Left:=-ButtonWidth
end;
procedure ButtonLabelMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
ButtonImage[TLabel(Sender).Tag].Left:=0
end;
procedure LoadButtonImage(AButton: TButton; AButtonIndex: integer);
var
Image: TBitmapImage;
Panel: TPanel;
Labl: TLabel;
begin
Panel:=TPanel.Create(WizardForm)
Panel.Left:=AButton.Left
Panel.Top:=AButton.Top
Panel.Width:=AButton.Width
Panel.Height:=AButton.Height
Panel.Tag:=AButtonIndex
Panel.Parent:=AButton.Parent
ButtonPanel[AButtonIndex]:=Panel
Image:=TBitmapImage.Create(WizardForm) //Рисунок который ложится на кнопку
Image.Width:=497 //Обязательно прописать оригинальный размер рисунка
Image.Height:=23
Image.Enabled:=False
Image.Bitmap.LoadFromFile(ExpandConstant('{tmp}\button.bmp'))
Image.Parent:=Panel
ButtonImage[AButtonIndex]:=Image
with TLabel.Create(WizardForm) do begin
Tag:=AButtonIndex
Parent:=Panel
Width:=Panel.Width
Height:=Panel.Height
Transparent:=True
OnClick:=@ButtonLabelClick
OnDblClick:=@ButtonLabelClick
OnMouseDown:=@ButtonLabelMouseDown
OnMouseUp:=@ButtonLabelMouseUp
end
Labl:=TLabel.Create(WizardForm) //Текст кнопок
Labl.Left:=23 //Указываем положение текста
Labl.Top:=5
Labl.Autosize:=True
Labl.Alignment:=taCenter
Labl.Tag:=AButtonIndex
Labl.Transparent:=True
Labl.Font.Color:=clWhite //Цвет текста
Labl.Caption:=AButton.Caption
Labl.OnClick:=@ButtonLabelClick
Labl.OnDblClick:=@ButtonLabelClick
Labl.OnMouseDown:=@ButtonLabelMouseDown
Labl.OnMouseUp:=@ButtonLabelMouseUp
Labl.Parent:=Panel
ButtonLabel[AButtonIndex]:=Labl
end;
procedure UpdateButton(AButton: TButton;AButtonIndex: integer);
begin
ButtonLabel[AButtonIndex].Caption:=AButton.Caption
ButtonPanel[AButtonIndex].Visible:=AButton.Visible
ButtonLabel[AButtonIndex].Enabled:=Abutton.Enabled
end;
procedure LicenceAcceptedRadioOnClick(Sender: TObject);
begin
ButtonLabel[bidNext].Enabled:=True
end;
procedure LicenceNotAcceptedRadioOnClick(Sender: TObject);
begin
ButtonLabel[bidNext].Enabled:=False
end;
procedure InitializeWizard();
var
BtnPanel: TPanel;
Logo: TBitmapImage;
begin
ExtractTemporaryFile('Logo.bmp')
BtnPanel:=TPanel.Create(WizardForm)
with BtnPanel do begin
Left:=0
Top:=415
Width:=497
Height:=35
Parent:=WizardForm
end
Logo:=TBitmapImage.Create(WizardForm)
with Logo do begin
AutoSize:=True;
Enabled:=False;
Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\Logo.bmp')
Parent:=BtnPanel
end
WizardForm.WizardSmallBitmapImage.SetBounds(ScaleX(0), ScaleY(0), WizardForm.MainPanel.Width, WizardForm.MainPanel.Height);
PageNameLabel:= TLabel.Create(WizardForm)
with WizardForm.PageNameLabel do
PageNameLabel.SetBounds(Left, Top, Width, Height);
PageNameLabel.Transparent:= True;
PageNameLabel.Font:= WizardForm.PageNameLabel.Font;
PageNameLabel.Font.Color:= clWhite; //цвет надписи
PageNameLabel.Parent:= WizardForm.MainPanel;
PageDescriptionLabel:= TLabel.Create(WizardForm)
with WizardForm.PageDescriptionLabel do
PageDescriptionLabel.SetBounds(Left, Top, Width, Height);
PageDescriptionLabel.Transparent:= True;
PageDescriptionLabel.Font:= WizardForm.PageDescriptionLabel.Font;
PageDescriptionLabel.Font.Color:= clWhite; //цвет надписи
PageDescriptionLabel.Parent:= WizardForm.MainPanel;
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
// Папка
ExtractTemporaryFile('papka.bmp');
WizardForm.SelectDirBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\papka.bmp'));
WizardForm.SelectDirBitmapImage.AutoSize:=True;
WizardForm.SelectGroupBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\papka.bmp'));
WizardForm.SelectGroupBitmapImage.AutoSize:=True;
//Инсталл черный
WizardForm.Font.Color:=clWhite;
WizardForm.Color:=Color;
WizardForm.WelcomePage.Color:=Color;
WizardForm.InnerPage.Color:=Color;
WizardForm.FinishedPage.Color:=Color;
WizardForm.LicensePage.Color:=Color;
WizardForm.PasswordPage.Color:=Color;
WizardForm.InfoBeforePage.Color:=Color;
WizardForm.UserInfoPage.Color:=Color;
WizardForm.SelectDirPage.Color:=Color;
WizardForm.SelectComponentsPage.Color:=Color;
WizardForm.SelectProgramGroupPage.Color:=Color;
WizardForm.SelectTasksPage.Color:=Color;
WizardForm.ReadyPage.Color:=Color;
WizardForm.PreparingPage.Color:=Color;
WizardForm.InstallingPage.Color:=Color;
WizardForm.InfoAfterPage.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.DiskSpaceLabel.Color:=Color;
WizardForm.DirEdit.Color:=Color;
WizardForm.GroupEdit.Color:=Color;
WizardForm.PasswordLabel.Color:=Color;
WizardForm.PasswordEdit.Color:=Color;
WizardForm.PasswordEditLabel.Color:=Color;
WizardForm.ReadyMemo.Color:=Color;
WizardForm.TypesCombo.Color:=Color;
WizardForm.WelcomeLabel1.Color:=Color;
WizardForm.WelcomeLabel1.Font.Color:=clWhite;
WizardForm.InfoBeforeClickLabel.Color:=Color;
WizardForm.MainPanel.Color:=Color;
WizardForm.PageNameLabel.Color:=Color;
WizardForm.PageDescriptionLabel.Color:=Color;
WizardForm.ReadyLabel.Color:=Color;
WizardForm.FinishedLabel.Color:=Color;
WizardForm.YesRadio.Color:=Color;
WizardForm.NoRadio.Color:=Color;
WizardForm.WelcomeLabel2.Color:=Color;
WizardForm.LicenseLabel1.Color:=Color;
WizardForm.InfoAfterClickLabel.Color:=Color;
WizardForm.ComponentsList.Color:=Color;
WizardForm.ComponentsDiskSpaceLabel.Color:=Color;
WizardForm.BeveledLabel.Color:=Color;
WizardForm.StatusLabel.Color:=Color;
WizardForm.FilenameLabel.Color:=Color;
WizardForm.SelectDirLabel.Color:=Color;
WizardForm.SelectStartMenuFolderLabel.Color:=Color;
WizardForm.SelectComponentsLabel.Color:=Color;
WizardForm.SelectTasksLabel.Color:=Color;
WizardForm.LicenseAcceptedRadio.Color:=Color;
WizardForm.LicenseNotAcceptedRadio.Color:=clwhite;
WizardForm.UserInfoNameLabel.Color:=Color;
WizardForm.UserInfoNameEdit.Color:=Color;
WizardForm.UserInfoOrgLabel.Color:=Color;
WizardForm.UserInfoOrgEdit.Color:=Color;
WizardForm.PreparingLabel.Color:=Color;
WizardForm.FinishedHeadingLabel.Color:=Color;
WizardForm.FinishedHeadingLabel.Font.Color:=cllime;
WizardForm.UserInfoSerialLabel.Color:=Color;
WizardForm.UserInfoSerialEdit.Color:=Color;
WizardForm.TasksList.Color:=Color;
WizardForm.RunList.Color:=Color;
WizardForm.SelectDirBrowseLabel.Color:=Color;
WizardForm.SelectStartMenuFolderBrowseLabel.Color:=Color;
WizardForm.PageNameLabel.Font.Color:=clWhite;
WizardForm.ReadyMemo.ScrollBars:= ssNone
WizardForm.Bevel.visible:=False;
WizardForm.BeveledLabel.visible:=False;
WizardForm.Bevel1.visible:=False;
WizardForm.NextButton.Left:=450;
WizardForm.NextButton.Top:=400;
WizardForm.NextButton.Width:=80;
WizardForm.NextButton.Height:=30;
WizardForm.CancelButton.Left:=540;
WizardForm.CancelButton.Top:=400;
WizardForm.CancelButton.Width:=80;
WizardForm.CancelButton.Height:=30;
WizardForm.BackButton.Left:=360
WizardForm.BackButton.Top:=400
WizardForm.BackButton.Width:=80
WizardForm.BackButton.Height:=300
//WizardForm.NextButton.Width:=ButtonWidth
//WizardForm.NextButton.Width:=ButtonWidth
WizardForm.NextButton.Width:=ButtonWidth
WizardForm.NextButton.Height:=ButtonHeight
WizardForm.CancelButton.Width:=ButtonWidth
WizardForm.CancelButton.Height:=ButtonHeight
WizardForm.BackButton.Width:=ButtonHeight
WizardForm.BackButton.Height:=ButtonHeight
WizardForm.DirBrowseButton.Left:=337
WizardForm.DirBrowseButton.Width:=ButtonWidth
WizardForm.DirBrowseButton.Height:=ButtonHeight
WizardForm.GroupBrowseButton.Left:=337
WizardForm.GroupBrowseButton.Width:=ButtonWidth
WizardForm.GroupBrowseButton.Height:=ButtonHeight
WizardForm.LicenseAcceptedRadio.OnClick:=@LicenceAcceptedRadioOnClick
WizardForm.LicenseNotAcceptedRadio.OnClick:=@LicenceNotAcceptedRadioOnClick
ExtractTemporaryFile('button.bmp')
LoadButtonImage(WizardForm.NextButton,bidNext)
LoadButtonImage(WizardForm.CancelButton,bidCancel)
LoadButtonImage(WizardForm.DirBrowseButton,bidDirBrowse)
LoadButtonImage(WizardForm.GroupBrowseButton,bidGroupBrowse)
LoadButtonImage(WizardForm.BackButton,bidBack)
with WizardForm do //Размер установщика
begin
AutoScroll := False;
ClientHeight := ScaleY(453);
ClientWidth := ScaleX(639);
end;
begin
ExtractTemporaryFile('img1.bmp');
MainImage := TBitmapImage.Create(WizardForm);
with MainImage do
begin
Parent := WizardForm;
Left := 0;
Top := 0;
Width := 453;
Height := 639;
Width:= ScaleX(639);
Bitmap.LoadFromFile(ExpandConstant('{tmp}\img1.bmp'));
end;
ExtractTemporaryFile('img2.bmp');
FinishedImage := TBitmapImage.Create(WizardForm);
with FinishedImage do
begin
Parent := WizardForm;
Left := 0;
Top := 0;
Width := 453;
Height := 639;
Width:= ScaleX(639);
Bitmap.LoadFromFile(ExpandConstant('{tmp}\img2.bmp'));
end;
//WelcomePage, создаем надписи на странице
WelcomeLabel1:= TLabel.Create(WizardForm);
with WelcomeLabel1 do
begin
Left:= ScaleX(175);
Top:= ScaleY(15);
Width:= ScaleX(312);
Height:= ScaleY(57);
AutoSize:= false;
Font.Style := [fsBold]
Transparent:= true;
WordWrap:= true;
Font.Size:= 13;
Font.Color:=ClWhite
Parent:= WizardForm;
Caption:=ExpandConstant('{cm:Start1}')
end;
WelcomeLabel2:=TLabel.Create(WizardForm);
with WelcomeLabel2 do
begin
Top:= ScaleY(90);
Left:= ScaleX(175);
Width:= ScaleX(295);
Height:= ScaleY(312);
AutoSize:= false;
WordWrap:= true;
Font.Color:=ClWhite
Font.Size:= 8;
Transparent:= true;
Parent:= WizardForm;
Caption:= ExpandConstant('{cm:Start2}')
end;
FinishedHeadingLabel:=TLabel.Create(WizardForm);
with FinishedHeadingLabel do
begin
Top:= ScaleY(15);
Left:= ScaleX(175);
Width:= ScaleX(312);
Height:= ScaleY(57);
AutoSize:= false;
WordWrap:= true;
Font.Size:= 13;
Font.Style := [fsBold]
Font.Color:=ClWhite
Transparent:= true;
Parent:= WizardForm;
Caption:= WizardForm.FinishedHeadingLabel.Caption;
end;
FinishedLabel:= TLabel.Create(WizardForm);
with FinishedLabel do
begin
Left:= ScaleX(175);
Top:= ScaleY(90);
Width:= ScaleX(295);
Height:= ScaleY(312);
AutoSize:= false;
WordWrap:= true;
Transparent:= true;
Font.Color:=ClWhite
Font.Size:= 8;
Parent:= WizardForm;
Caption:= ExpandConstant('{cm:Finished1}')
end;
end;
end;
procedure HideComponents1;
begin
WelcomeLabel1.Hide;
WelcomeLabel2.Hide;
FinishedHeadingLabel.Hide;
FinishedLabel.Hide;
end;
procedure ShowComponents1(CurPageID: Integer);
begin
case CurPageID of
wpWelcome:
begin
WelcomeLabel1.Show
WelcomeLabel2.Show
end;
wpFinished:
begin
FinishedHeadingLabel.Show;
FinishedLabel.Show;
end;
end;
end;
procedure CurPageChanged1(CurPageID: Integer);
begin
begin
HideComponents1;
ShowComponents1(CurPageID);
if CurPageID = wpWelcome then
begin
WizardForm.OuterNotebook.Hide;
FinishedImage.Hide;
end
else if CurPageID = wpFinished then
begin
WizardForm.OuterNotebook.Hide;
MainImage.Hide;
FinishedImage.Show;
end
else WizardForm.OuterNotebook.Show;
end;
PageNameLabel.Caption:= WizardForm.PageNameLabel.Caption;
PageDescriptionLabel.Caption:= WizardForm.PageDescriptionLabel.Caption;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
CurPageChanged1(CurPageID);
CurPageChanged2(CurPageID);
UpdateButton(WizardForm.BackButton,bidBack)
UpdateButton(WizardForm.NextButton,bidNext)
UpdateButton(WizardForm.CancelButton,bidCancel)
ButtonLabel[bidBack].Left := (ButtonPanel[bidBack].Width / 30 - ButtonLabel[bidBack].Width / 30);
ButtonLabel[bidNext].Left := (ButtonPanel[bidNext].Width / 2 - ButtonLabel[bidNext].Width / 2);
ButtonLabel[bidCancel].Left := (ButtonPanel[bidCancel].Width / 2 - ButtonLabel[bidCancel].Width / 2);
ButtonLabel[bidDirBrowse].Left := (ButtonPanel[bidDirBrowse].Width / 2 - ButtonLabel[bidDirBrowse].Width / 2);
ButtonLabel[bidGroupBrowse].Left := (ButtonPanel[bidGroupBrowse].Width / 2 - ButtonLabel[bidGroupBrowse].Width / 2);
end;
insombia
08-04-2011, 22:56
Как сделать чтобы установка шла типа так http://pic.4m.net.ua/images/77301382401926032825.jpg
insombia, а что тебе именно надо?
insombia
09-04-2011, 11:26
R3Pa4eK мне нужно чтобы когда игра устанавливалась то установка шла процентами хотябы
insombia, isdone тебе в помощь.
Дайте мне пожалуйста скрипт через который можно перемещать и изменять текст на страницах
insombia
09-04-2011, 15:53
Как сделать 3D инсталлятор типа как в crysis 2 repack от recoding
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC