Скрипты Inno Setup. Помощь и советы [часть 3]
-
John1992on
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
Делаю репак игры, и столкнулся с задачей - нужно в меню инсталятора сделать дополнительное окно выбора языка, а сам выбор должен осуществляется копированием файла из одной директории игры в другую, собственно, должен быть "RadioButton" в котором можно выбрать один из 4 языков, после нажатия кнопки "Next" выбранный файл должен скопироватся в определенную папку....
Объясните пожалуйста мне как новичку, как это делать, хотя бы концептуально... как я понял нужно сделать Компонент, но это правильно сделать, понять не могу, так как не могу изучить хелп программы из-за незнания англ.языка....
Объясните пожалуйста мне как новичку, как это делать, хотя бы концептуально... как я понял нужно сделать Компонент, но это правильно сделать, понять не могу, так как не могу изучить хелп программы из-за незнания англ.языка....
-
Gnom_aka_Lexander
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
John1992on,
Код:
тоесть языки сами являются именами компонентов, только не нужно отключать выбор языка на первой странице, и все будет
Код:
Код: Выделить всё
[Languages]
Name: English; MessagesFile: compiler:Languages\English.isl
Name: German; MessagesFile: compiler:Languages\German.isl
Name: Russian; MessagesFile: compiler:Languages\Russian.isl
Name: Spanish; MessagesFile: compiler:Languages\Spanish.isl
[Files]
Source: FileEn.file; DestDir: {app}; Languages: English;
Source: FileGe.file; DestDir: {app}; Languages: German;
Source: FileRu.file; DestDir: {app}; Languages: Russian;
Source: FileSp.file; DestDir: {app}; Languages: Spanish;тоесть языки сами являются именами компонентов, только не нужно отключать выбор языка на первой странице, и все будет

-
death7lord
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
бяда........
делаю репак Arcania, у меня он выходит примерно 4,5Гб
использовал пресомп-среп-арк(ультра2Гб)
в сети люди ужимали до 3,6 и требуется 256Мб
в чём прикол? как же так они сжимают?
делаю репак Arcania, у меня он выходит примерно 4,5Гб
использовал пресомп-среп-арк(ультра2Гб)
в сети люди ужимали до 3,6 и требуется 256Мб
в чём прикол? как же так они сжимают?
-
nik1967
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
death7lord,
Ну вообще то это оффтопик, но анпакером распаковываются парочка *.pak-ов, и всё это потом отлично жмётся. Русская версия у меня - 3,30 гб, 3-х язычная - 4,26 гб.
Ну вообще то это оффтопик, но анпакером распаковываются парочка *.pak-ов, и всё это потом отлично жмётся. Русская версия у меня - 3,30 гб, 3-х язычная - 4,26 гб.
-
death7lord
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
nik1967, можно расценивать как оффтоп, а может какие доп.программы кроме InnoSetup
-
Gnom_aka_Lexander
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
Кому не сложно, помогите пожалуйста...
Все уже доделал,
[Setup]
OutputBaseFilename=тест
AppName=тест
AppVerName=тест 1
DefaultDirName={pf}\тест
DisableProgramGroupPage=true
UsePreviousGroup=false
AppendDefaultGroupName=false
Все уже доделал,
читать дальше »
[Setup]
OutputBaseFilename=тест
AppName=тест
AppVerName=тест 1
DefaultDirName={pf}\тест
DisableProgramGroupPage=true
UsePreviousGroup=false
AppendDefaultGroupName=false
Код: Выделить всё
var
ISCustomPage1: TWizardPage;
Nick: TNewStaticText;
NickEdit: TNewEdit;
ISCustomPage2: TWizardPage;
NikInfo: TNewStaticText;
NickInfoEdit: TNewEdit;
procedure RedesignWizardForm;
begin
{ Creates custom wizard page }
ISCustomPage1 := CreateCustomPage(wpWelcome, 'ISCustomPage1_Caption', 'ISCustomPage1_Description');
ISCustomPage2 := CreateCustomPage(wpPreparing, 'ISCustomPage2_Caption', 'ISCustomPage2_Description');
{ Nick }
Nick := TNewStaticText.Create(WizardForm);
with Nick do
begin
Name := 'Nick';
Parent := ISCustomPage1.Surface;
Caption := 'Nick';
Left := ScaleX(168);
Top := ScaleY(88);
Width := ScaleX(23);
Height := ScaleY(14);
end;
{ NickEdit }
NickEdit := TNewEdit.Create(WizardForm);
with NickEdit do
begin
Name := 'NickEdit';
Parent := ISCustomPage1.Surface;
Left := ScaleX(136);
Top := ScaleY(120);
Width := ScaleX(121);
Height := ScaleY(21);
Text := ''; //нужно какимто образом ввести это там, где написано {NickEdit.Text - не катит...}, и сделать так, чтобы в случае отсутствия значения здесь, ISCustomPage2 не создавалась.//
end;
Nick.TabOrder := 0;
NickEdit.TabOrder := 1;
{ NikInfo }
NikInfo := TNewStaticText.Create(WizardForm);
with NikInfo do
begin
Name := 'NikInfo';
Parent := ISCustomPage2.Surface;
Caption := 'NikInfo';
Left := ScaleX(168);
Top := ScaleY(56);
Width := ScaleX(35);
Height := ScaleY(14);
end;
{ NickInfoEdit }
NickInfoEdit := TNewEdit.Create(WizardForm);
with NickInfoEdit do
begin
Name := 'NickInfoEdit';
Parent := ISCustomPage2.Surface;
Left := ScaleX(66);
Top := ScaleY(96);
Width := ScaleX(273);
Height := ScaleY(93);
Text := '';
end;
NikInfo.TabOrder := 0;
NickInfoEdit.TabOrder := 1;
end;
procedure InitializeWizard();
begin
RedesignWizardForm;
end;
procedure CurStepChanged(CurStep: TSetupStep);
Var
S1: String;
S2: String;
begin
if CurStep = ssPostInstall//запись после распаковки всех файлов
then begin
S1 := '[Account_0]' +#13+#10+ 'Login=' + NickEdit.Text;
SaveStringToFile(ExpandConstant('{app}\test.ini'), S1, false);
begin
if CurStep = ssPostInstall//запись после распаковки всех файлов
then begin
S2 := '[Main]' +#13+#10+ 'Usernotes=' + NickInfoEdit.Text;
SaveStringToFile(ExpandConstant('{app}\{NickEdit.Text - не катит...}\test2.ini'), S2, false);
end;
end;
end;
end;
тут застрял...
Все решено, пост ниже.-
Vamp1re
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
Как изменить панель инсталятора?
(см.рис)
На стандартную от Windows?
(пример,см.рис)
(см.рис)
На стандартную от Windows?
(пример,см.рис)

-
Vamp1re
-
Black666angel
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
Vamp1re, Удоли подобные строки
[Files]
Source: ISSkin.dll; DestDir: {app}; Attribs: hidden system
Source: Angel.cjstyles; DestDir: {app}; Attribs: hidden system
читать дальше »
[Files]
Source: ISSkin.dll; DestDir: {app}; Attribs: hidden system
Source: Angel.cjstyles; DestDir: {app}; Attribs: hidden system
Код: Выделить всё
function GetSystemMetrics(nIndex: Integer): Integer; external 'GetSystemMetrics@user32.dll stdcall';
procedure LoadSkin(lpszPath: String; lpszIniFileName: String ); external 'LoadSkin@files:isskin.dll stdcall delayload setuponly';
procedure LoadSkinA(lpszPath: String; lpszIniFileName: String ); external 'LoadSkin@{tmp}\isskin.dll stdcall delayload uninstallonly';
function InitializeSetup(): Boolean;
begin
ExtractTemporaryFile('Angel.cjstyles');
LoadSkin(ExpandConstant('{tmp}\Angel.cjstyles'), '');
Result:= true
end;
function InitializeUninstall(): Boolean;
begin
FileCopy(ExpandConstant('{app}\isskin.dll'), ExpandConstant('{tmp}\isskin.dll'), False);
FileCopy(ExpandConstant('{app}\Angel.cjstyles'), ExpandConstant('{tmp}\Angel.cjstyles'), False);
LoadSkinA(ExpandConstant('{tmp}\Angel.cjstyles'), '');
Result:=True;
end;
Или вазми фаил из папки x:\WINDOWS\Resources\Themes\*\*.msstyles ипереименуи в *.cjstyles
и вот радуися (стандартная тема luna.msstyles)-
Gnom_aka_Lexander
Re: Скрипты Inno Setup. Помощь и советы [часть 3]
Vista-w, У тебя сейчас подключены два архива: setup1.arc и setup2.arc твой архив как называется?