View Full Version : Add Compression method HELP...
ATL4NTYS
02-09-2016, 14:38
Hello i'm litlle lama and i want add compression like in script WPI to this... please help.. :( this knows just few and they are unworking... (and sorry for my bad english) please help.. please... :( :( :( can anyone help me and add the compression methods into this script...?
http://img.centerofwarez.cz/subdom/img/image.php?di=K358
http://img.centerofwarez.cz/subdom/img/image.php?di=XSUC
felice2011
03-09-2016, 08:55
@ATL4NTYS does not write to me in private, I have the overflowing mailbox.
I tested the script that you posted, and I changed to test with this method (precomp+srep+delta+dispack070+4x4:lzma:max) is working perfectly.
explained better and let me know what you need, or what precise method you want to configure the installation of this script.
ATL4NTYS
04-09-2016, 05:07
@felice2011 Ouch sorry my mistake.. compression method works but with any compression i get an error with ISDone.dll :(
http://img.centerofwarez.cz/subdom/img/image.php?di=6V6K
Can you solve it? :(
Thx for reply..
felice2011
04-09-2016, 05:46
Read so the error is a somewhat difficult to decipher, I read only IsArcExtract.:D
I recommend the use of MSKompressor instead of Split Kompress, it has a range of more compressors.;)
Edit this point as below :
if ISDoneInit(ExpandConstant('{src}\records.inf'), $F777, Comps1,Comps2,Comps3, MainForm.Handle, {#NeedMem}, @ProgressCallback) then begin
repeat
if not SrepInit(ExpandConstant('{app}'),512,0) then break;
if not PrecompInit(ExpandConstant('{app}'),128,PCFVer) then break;
if not FileSearchInit(true) then break;
if not ISArcExtract (0, 100, ExpandConstant('{src}\data.arc'), ExpandConstant('{app}'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
if not ShowChangeDiskWindow ('bla bla bla.', ExpandConstant('{src}'),'data.arc') then break;
FindHandle1:=ISFindFiles(0,ExpandConstant('{app}\* .ogg'),ColFiles1);
ExecError:=false;
while not ExecError and ISPickFilename(FindHandle1,ExpandConstant('{app}\' ),CurIndex1,true) do begin
InFilePath:=ISGetName(0);
OutFilePath:=ISGetName(1);
OutFileName:=ISGetName(2);
ExecError:=not ISExec(0, 0, 0, ExpandConstant('{tmp}\oggdec.exe'), '"'+InFilePath+'" -w "'+OutFilePath+'"',ExpandConstant('{tmp}'),OutFileName,false);
end;
ISFindFree(FindHandle1);
if ExecError then break;
ISDoneError:=false;
until true;
ISDoneStop;
end;
Logically the name 'data.arc' is the archive name we're going to insert.
Here add the names of compressors we're going to compile in the installation :
[Files]
Source: "Files\unarc.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\ISDone.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
#ifdef records
Source: "records.ini"; DestDir: "{tmp}"; Flags: "dontcopy";
#endif
#ifdef PrecompInside
Source: "Files\packjpg_dll.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\packjpg_dll1.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\precomp.exe"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\zlib1.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
#endif
#ifdef SrepInside
Source: "Files\CLS-srep.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\CLS-MSC.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\srep.exe"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\srep64.exe"; DestDir: "{tmp}"; Flags: "dontcopy";
#endif
#ifdef facompress
Source: "Files\facompress.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\facompress_mt.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
#endif
#ifdef unrar
Source: "Files\Unrar.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\arc.ini"; DestDir: "{tmp}"; Flags: "dontcopy";
#endif
#ifdef XDelta
Source: "Files\XDelta3.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
#endif
#ifdef PackZIP
Source: "Files\7z.dll"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\dec.exe"; DestDir: "{tmp}"; Flags: "dontcopy";
Source: "Files\packZIP.exe"; DestDir: "{tmp}"; Flags: "dontcopy";
#endif
Here we add the names of compressors that will be extracted to a temporary path during installation:
case CurStep of
ssInstall: begin
WizardForm.CancelButton.OnClick := @CancelButtonOnClick;
ISDoneCancel:=0;
ExtractTemporaryFile('unarc.dll');
ExtractTemporaryFile('arc.ini');
#ifdef PrecompInside
ExtractTemporaryFile('packjpg_dll.dll');
ExtractTemporaryFile('packjpg_dll1.dll');
ExtractTemporaryFile('precomp.exe');
ExtractTemporaryFile('zlib1.dll');
#endif
#ifdef SrepInside
ExtractTemporaryFile('CLS-MSC.dll');
ExtractTemporaryFile('CLS-srep.dll');
ExtractTemporaryFile('srep.exe');
ExtractTemporaryFile('srep64.exe');
#endif
#ifdef facompress
ExtractTemporaryFile('facompress.dll');
ExtractTemporaryFile('facompress_mt.dll');
#endif
#ifdef records
ExtractTemporaryFile('records.inf');
#endif
#ifdef unrar
ExtractTemporaryFile('Unrar.dll');
#endif
#ifdef XDelta
ExtractTemporaryFile('XDelta3.dll');
#endif
#ifdef PackZIP
ExtractTemporaryFile('7z.dll');
ExtractTemporaryFile('dec.exe');
ExtractTemporaryFile('PackZIP.exe');
#endif
Comps1:=0;
Comps2:=0;
Comps3:=0;
#ifdef precomp
PCFVer:={#precomp};
#else
PCFVer:=0;
#endif
Logically and it is understood that the name of the compressors you added in the script, must be entered before in the "Files" folder.
Last thing, if you use different versions of precomp, just copy and replace the existing precomp always in the "Files" folder.
The script that you posted is tested and working with your modifications, enjoy..;)
ATL4NTYS
04-09-2016, 06:48
@felice2011 Okey thanks a lot.. :)
ATL4NTYS
04-09-2016, 09:52
@felice2011 Can you help me with last problem what i have... I dont know where the f*** are they words... the russian texts.. i dont want it! can you help me with remove it or trasnalte i dont know where..?
:(
this is when installing (progress bar)
http://img.centerofwarez.cz/subdom/img/image.php?di=O5P5
and this is when finalizing (finished)
http://img.centerofwarez.cz/subdom/img/image.php?di=8T4M
please help mr. magic.. :o:)
felice2011
04-09-2016, 11:29
This is what I found to be translated from Czech to English ...
[Languages]
Name: "ENG"; MessagesFile: "compiler:Languages\english.isl";
[Messages]
ButtonNext=Install
ButtonCancel=Cancel
ButtonWizardBrowse=Browse
StatusLabel := TLabel.Create(WizardForm);
with StatusLabel do begin
Parent:=WizardForm;
AutoSize:=True;
Transparent:=True;
SetBounds(ScaleX(9), ScaleY(180), ScaleX(0), ScaleY(0));
Caption:='Completion Of...';
end;
if CurPageID = wpWelcome then begin
GetSpaceOnDisk(ExtractFileDrive(WizardForm.DirEdit .Text), True, FreeMB, TotalMB);
if FreeMB<{#NeedInstallSize} then begin
MsgBox(' Insufficient Disk Space!'#13'Required Space For Installation: '+MbOrTb({#NeedInstallSize})+#13' Free Space: '+MbOrTb(FreeMB)+' z '+MbOrTb(TotalMB), mbError, mb_Ok);
Result := False ;
end;
if ISDoneError then begin
StatusLabel.Caption:='Uninstalling...';
ISDoneProgressBar.Hide;
Exec2(ExpandConstant('{uninstallexe}'), '/VERYSILENT', false);
end;
ATL4NTYS
04-09-2016, 13:10
@felice2011 no no.. you dont understand me... my language is Czech I'm from czech republic.. Czech.isl is fine and the translations so... but my problem is the russian words in the taskbar (via screens) ... :( i dont know where in the script is the russian words... i want to translate it to czech but i dont know where is the sources of them.. :(
felice2011
04-09-2016, 14:27
You check ...
[Languages]
Name: eng; MessagesFile: compiler:Languages\English.isl
You insert "english.ini" inside the "Files" folder ...15218 ..
Insert the same name to be compiled ...
Source: "Files\english.ini"; DestDir: "{tmp}"; Flags: "dontcopy";
Same thing for the temporary extraction ...
ExtractTemporaryFile('english.ini');
Add this switch here written in red:
if ISDoneInit(ExpandConstant('{src}\records.inf'), $F777, Comps1,Comps2,Comps3, MainForm.Handle, {#NeedMem}, @ProgressCallback) then begin
repeat
case ActiveLanguage of
'eng': ChangeLanguage('English');
end;
if not SrepInit(ExpandConstant('{app}'),512,0) then break;
if not PrecompInit(ExpandConstant('{app}'),128,PCFVer) then break;
if not FileSearchInit(true) then break;
if not ISArcExtract (0, 100, ExpandConstant('{src}\data.arc'), ExpandConstant('{app}'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
if not ShowChangeDiskWindow ('bla bla bla.', ExpandConstant('{src}'),'data.arc') then break;
FindHandle1:=ISFindFiles(0,ExpandConstant('{app}\* .ogg'),ColFiles1);
ExecError:=false;
while not ExecError and ISPickFilename(FindHandle1,ExpandConstant('{app}\' ),CurIndex1,true) do begin
InFilePath:=ISGetName(0);
OutFilePath:=ISGetName(1);
OutFileName:=ISGetName(2);
ExecError:=not ISExec(0, 0, 0, ExpandConstant('{tmp}\oggdec.exe'), '"'+InFilePath+'" -w "'+OutFilePath+'"',ExpandConstant('{tmp}'),OutFileName,false);
end;
ISFindFree(FindHandle1);
if ExecError then break;
ISDoneError:=false;
until true;
ISDoneStop;
end;
I simulated the same mistake that initially gave you ...
http://i64.tinypic.com/zo88zb.png
As you can read the error is written in Italian, because I translated the error line within the "English.ini" files in Italian.
Same thing you can do if you do not have file (*.ini) preconfigured in your language.
EDIT:The only thing that does not come back, that during installation I have not any progressbar in the task bar, as the picture you posted, maybe because I use w7.
ATL4NTYS
05-09-2016, 07:27
You are magic! thanx! :p :)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.