Скрипты Inno Setup. Помощь и советы [часть 5]
-
SatHan
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Creator000, причём здесь компоненты и деинсталлятор?
-
HElmo
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Ещё одна небольшая проблема:
Нужно включить все вложенные папки, сделал вот так вот..
Код:
Но, при установке, инсталлятор распаковывает только подпапки, а саму папку нет.. что делать и как быть?
Нужно включить все вложенные папки, сделал вот так вот..
Код:
Код: Выделить всё
Source: "D:\GAMES\World of tanks\World_of_Tanks\res_mods\0.7.5\vehicles\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: TankmodelsНо, при установке, инсталлятор распаковывает только подпапки, а саму папку нет.. что делать и как быть?
-
Snoopak96
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
vint56,
Код:
читать дальше »
Код:
Код: Выделить всё
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[__code]
var
BrowseDialogTitle,BrowseDialogTitle1,BrowseDialogLabel:Tlabel;
Edit: TNewEdit;
i:Integer;
DirTreeView : TFolderTreeView;
Browse, OK, NO, back, new,DirBrowseSetting: TButton;
MainPanelBigBevel: TBevel;
DirPanel,MainPanelBig1,MainPanelBig2: TPanel;
procedure Okclick(Sender: TObject);
begin
WizardForm.DirEdit.Text:=AddBackslash(Edit.Text);
if DirPanel.Visible then DirPanel.hide;
end;
procedure BackClick(Sender: TObject);
begin
Edit.Text:=AddBackslash(ExpandConstant('{pf}\')+'My Application');
DirTreeView.ChangeDirectory(AddBackslash(ExpandConstant('{pf}\')), True);
end;
procedure NOclick(Sender: TObject);
begin
DirTreeView.ChangeDirectory(AddBackslash(WizardForm.dirEdit.Text), true);
Edit.Text:=(DirTreeView.Directory);
if DirPanel.Visible then DirPanel.hide;
end;
procedure DirFolderChange(Sender: TObject);
Begin
Edit.Text:=AddBackslash(DirTreeView.Directory) + 'My Application';
end;
procedure DirBrowseSettingOnClick(Sender: TObject);
begin
if not DirPanel.Visible then DirPanel.show;
end;
procedure InitializeWizard();
begin
WizardForm.ClientWidth:=ScaleX(580);
WizardForm.ClientHeight:=ScaleY(410);
WizardForm.Center;
WizardForm.OuterNotebook.Hide;
WizardForm.InnerNotebook.Hide;
WizardForm.Bevel.hide;
WizardForm.Bevel1.hide;
WizardForm.Color := clMenu;
WizardForm.NextButton.SetBounds(ScaleX(460),ScaleY(374),ScaleX(110),ScaleY(30));
WizardForm.CancelButton.SetBounds(ScaleX(487),ScaleY(500),ScaleX(110),ScaleY(30));
WizardForm.BackButton.SetBounds(ScaleX(340),ScaleY(374),ScaleX(110),ScaleY(30));
WizardForm.DirEdit.Parent:=WizardForm;
WizardForm.DirEdit.SetBounds(ScaleX(20),ScaleY(200),ScaleX(350),ScaleY(30));
DirBrowseSetting := TButton.Create(WizardForm);
with DirBrowseSetting do begin
Parent := WizardForm;
SetBounds(ScaleX(340),ScaleY(374),ScaleX(110),ScaleY(30));
Caption := 'Настройки';
OnClick:= @DirBrowseSettingOnClick;
end;
DirPanel:= Tpanel.Create(WizardForm);
with DirPanel do begin
Parent:=WizardForm;
BevelOuter:= bvNone;
Align:=alClient;
hide;
end;
for i:=0 to 3 do
begin
with TBevel.Create(WizardForm) do
begin
BringToFront;
Shape:=bsTopLine;
Case i of
0:
begin
Parent:=WizardForm;
SetBounds(ScaleX(0),ScaleY(365),ScaleX(580),ScaleY(2));
end;
1:
begin
Parent:=DirPanel;
SetBounds(ScaleX(0),ScaleY(365),ScaleX(580),ScaleY(2));
end;
2:
begin
Parent:=WizardForm;
SetBounds(ScaleX(0),ScaleY(47),ScaleX(580),ScaleY(2));
end;
3:
begin
Parent:=DirPanel;
SetBounds(ScaleX(0),ScaleY(47),ScaleX(580),ScaleY(2));
end;
end;
end;
end;
Back:=tbutton.create(DirPanel)
with back do begin
SetBounds(ScaleX(250),ScaleY(375),ScaleX(100),ScaleY(30));
parent:=DirPanel;
Caption:='Сброс';
onclick:=@BackClick;
end;
Ok:=tbutton.create(DirPanel)
with ok do begin
SetBounds(ScaleX(360),ScaleY(375),ScaleX(100),ScaleY(30));
parent:=DirPanel;
Caption:='OK';
onclick:=@OKclick;
end;
No:=tbutton.create(DirPanel)
with no do begin
SetBounds(ScaleX(470),ScaleY(375),ScaleX(100),ScaleY(30));
parent:=DirPanel;
Caption:='Отмена';
onclick:=@NOclick;
end;
BrowseDialogTitle := TLabel.Create(DirPanel);
BrowseDialogTitle.SetBounds(ScaleX(19),ScaleY(5),ScaleX(135),ScaleY(16));
BrowseDialogTitle.Font.Style:=[fsBold];
BrowseDialogTitle.Font.Size:= 10;
BrowseDialogTitle.Transparent := True;
BrowseDialogTitle.Parent := DirPanel;
BrowseDialogTitle.Caption := 'Обзор папок';
BrowseDialogTitle.Font.Name := 'Tahoma';
BrowseDialogTitle.Font.Height := -13;
BrowseDialogTitle1 := TLabel.Create(DirPanel);
BrowseDialogTitle1.SetBounds(ScaleX(30),ScaleY(25),ScaleX(365),ScaleY(13));
BrowseDialogTitle1.Transparent := True;
BrowseDialogTitle1.Parent := DirPanel;
BrowseDialogTitle1.Caption := 'В какую папку Вы хотите установить игру?';
MainPanelBig1 := TPanel.Create(DirPanel);
MainPanelBig1.Parent := DirPanel;
MainPanelBig1.SetBounds(ScaleX(20),ScaleY(69),ScaleX(541),ScaleY(261));
MainPanelBig1.Caption := '';
MainPanelBig2 := TPanel.Create(DirPanel);
MainPanelBig2.Parent := MainPanelBig1;
MainPanelBig2.SetBounds(ScaleX(10),ScaleY(11),ScaleX(520),ScaleY(239));
MainPanelBig2.BevelOuter := bvLowered;
MainPanelBig2.Caption := '';
MainPanelBigBevel := TBevel.Create(DirPanel);
MainPanelBigBevel.Style := bsRaised;
MainPanelBigBevel.Parent := MainPanelBig2;
MainPanelBigBevel.SetBounds(ScaleX(9),ScaleY(10),ScaleX(500),ScaleY(220));
Edit:= TNewEdit.Create(DirPanel);
Edit.SetBounds(ScaleX(20),ScaleY(20),ScaleX(480),ScaleY(21));
Edit.Text:=WizardForm.DirEdit.text;
Edit.Parent:= MainPanelBig2;
Edit.Font.Color:=clBlack;
DirTreeView:= TFolderTreeView.Create(DirPanel);
DirTreeView.SetBounds(ScaleX(20),ScaleY(50),ScaleX(480),ScaleY(170));
DirTreeView.OnChange:=@DirFolderChange;
DirTreeView.Parent:=MainPanelBig2;
DirTreeView.ChangeDirectory(AddBackslash(WizardForm.dirEdit.Text), true);
Edit.Text:=(DirTreeView.Directory);
BrowseDialogLabel := TLabel.Create(DirPanel);
BrowseDialogLabel.SetBounds(ScaleX(30),ScaleY(340),ScaleX(365),ScaleY(13));
BrowseDialogLabel.Transparent := True;
BrowseDialogLabel.Parent := DirPanel;
BrowseDialogLabel.Caption := 'Выберите папку из списка и нажмите «OK».';
end;-
Mailchik
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
AlexLAN, попробуйте:
Код:
Код:
Код: Выделить всё
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[INI]
Filename: "{app}\Game.ini"; Section: "Nancy Data"; Key: "IDPath"; String: {code:Test};
[Code]
function Test(s : string):string;
begin
Result := copy(ExpandConstant('{app}'), 3, 100);
end;-
Gnom_aka_Lexander
-
SatHan
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Всем привет, совсем недавно я начал работать с яндекс и тут же возникла такая проблемма. Нужно в инстляторе сделать при установке возможность выбора пользователя на установку яндекс бар и других параметров, но в скриптах тем более на паскаль я не силен. Помогите пожалуйста создать скрипт инстлятора или инстлятор для программ моих, конечно не за бесплатно. БОлее подробно при личной переписке. Прошу ответить как можно скорее так как сроки поджимают.
--
Контактные данные удалены модератором -
Для связи на форуме существует
--
Контактные данные удалены модератором -
ОПК п. 3.16
Для связи на форуме существует
личная переписка
-
Gnom_aka_Lexander
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Поймите мне помощь нужна, я из за этого и обратился на форум, так как раз здесь тему инстляторов обсуждают хорошо, значит есть люди способные его написать, вот я и ищю такого человека чтобы ему заказать написание инстлятора
-
SatHan
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
R.i.m.s.k.y., Johny777, Спасибо.
R.i.m.s.k.y., ничево себе сколько кода
. хотелось как лучше а получилось как всегда
.
ладно я тада сам попробую что нибудь скумекать.
R.i.m.s.k.y., ничево себе сколько кода
. хотелось как лучше а получилось как всегда
.ладно я тада сам попробую что нибудь скумекать.
-
Mailchik
Re: Скрипты Inno Setup. Помощь и советы [часть 5]
Raf-9600, тот же, от Шегората:
Код:
читать дальше »
Код:
Код: Выделить всё
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Components]
Name: std; Description: Стандартная; Flags: exclusive disablenouninstallwarning; Types: custom compact full
Name: std\a; Description: Анси; Flags: exclusive disablenouninstallwarning; Types: custom compact full
Name: std\u; Description: Юникод; Flags: exclusive disablenouninstallwarning; Types: custom compact full
Name: ext; Description: Китаяса; Flags: exclusive disablenouninstallwarning; Types: custom compact full
Name: ext\a; Description: Анси; Flags: exclusive disablenouninstallwarning; Types: custom compact full
Name: ext\u; Description: Юникод; Flags: exclusive disablenouninstallwarning; Types: custom compact full
[code]
var
LastIndex: Integer;
procedure HintStr(Sender: TObject; X: Integer; Y: Integer; Index: Integer; Area: TItemArea);
begin
if IndexLastIndex then begin
LastIndex:= Index;
WizardForm.ComponentsList.ShowHint:= False;
WizardForm.ComponentsList.Hint:= '';
Exit;
end;
with WizardForm.ComponentsList do
case Index of
0 : Hint := 'Стандартная';
1 : Hint := 'Стандартная Анси';
2 : Hint := 'Стандартная Юникод';
3 : Hint := 'Китаяса';
4 : begin
if IsComponentSelected('ext\u') then // то, что вам нужно.
Hint := 'Китаяса Анси 2'
else Hint := 'Китаяса Анси';
end;
5 : Hint := 'Китаяса Юникод';
else
Hint := 'Наведите на компонент для отображения подсказки';
end;
WizardForm.ComponentsList.ShowHint:= True;
end;
procedure InitializeWizard();
begin
with WizardForm do
begin
with ComponentsList do
begin
ShowHint := True;
Hint := '';
OnItemMouseMove := @HintStr;
end;
end;
end;