|
|
|
|
|||||||
![]() |
|
|
Thread Tools | Search this Thread | Display Modes |
|
#16
|
||||
|
||||
|
VER: 0.4.0.1
Code:
What's new: - Improved performance, percentage and times. ( this version is not compatible with the old version (v.0.4) ) Last edited by BLACKFIRE69; 08-04-2026 at 14:19. |
| Sponsored Links |
|
#17
|
|||
|
|||
|
My K7 AV didn't detect anything..
VirusTotal report the following things. |
| The Following 2 Users Say Thank You to ffmla For This Useful Post: | ||
ADMIRAL (06-01-2023), BLACKFIRE69 (05-01-2023) | ||
|
#18
|
|||
|
|||
|
I've tried updating my script to reflect the new changes however now for some reason the error flag will instantly trigger leading to a failed installation.
There is no log written or IsArcEx error message box that could indicate the problem. Please may you take a look at my changes and see if anything is incorrect? The old strings are commented out with //. Thank you! Code:
//function ISArcExAddDisks(Inputfile, Password: Widestring): boolean; function ISArcExAddDisks(Inputfile, Password, OutputPath: Widestring): boolean; external 'ISArcExAddDisks@files:ISArcEx.dll stdcall'; //function ISArcExExtract(DiskNumber: Integer; OutputPath, CfgFile, WorkPath: Widestring): boolean; function ISArcExExtract(DiskNumber: Integer; CfgFile, WorkPath: Widestring): boolean; external 'ISArcExExtract@files:ISArcEx.dll stdcall'; Code:
#ifdef Data1
if FileExists(ExpandConstant('{src}\{#Data1}')) then
begin
ISArcDiskAddingFalied:= ISArcExAddDisks(ExpandConstant('{src}\{#Data1}'), '{#DiskPassword}', ExpandConstant('{app}'));
if ISArcDiskAddingFalied then break;
ISArcExDiskCount:= ISArcExDiskCount + 1;
end;
#endif
Code:
for i:= 1 to ISArcExDiskCount do
begin
//ISArcExError := not ISArcExExtract(i, ExpandConstant('{app}\'), ExpandConstant('{tmp}\ARC.INI'), ExpandConstant('{app}'));
ISArcExError := not ISArcExExtract(i, ExpandConstant('{tmp}\ARC.INI'), ExpandConstant('{app}'));
if ISArcExError then break;
end;
|
|
#19
|
||||
|
||||
|
Quote:
yes, there's something incorrect. see the hint below. ![]() Code:
v0.4.0.0 (Old) >> ISArcDiskAddingFalied v0.4.0.1 (New) >> ISArcDiskAddingSuccess Quote:
add this before the ISArcExInit. you'll see the error. (sorry, i put the error message in the wrong place in the script) Code:
if ISArcExDiskCount = 0 then
MsgBox('There is no any archive found for unpacking.', mbError, MB_OK);
|
|
#20
|
|||
|
|||
|
Typo error?? --> ISArcDiskAddingFalied ! Correct? No. --> ISArcDiskAddingFailed
|
| The Following User Says Thank You to kj911 For This Useful Post: | ||
Masquerade (05-01-2023) | ||
|
#21
|
|||
|
|||
|
Maybe I am not following, but I don't see how changing the name of the Boolean for the disk adding command will fix the issue.
|
|
#22
|
||||
|
||||
|
Quote:
i know it's a bit confusing. but note that it's not just changing the variable name, the ISArcExAddDisks function has also changed. 1). in the previous version (v0.4) ISArcExAddDisks function returns error state when adding the disks. i.e. it returns true if a disk was added unsuccessfully (failed). so you need to catch the error state. Code:
ISArcDiskAddingFalied:= ISArcExAddDisks(...); if ISArcDiskAddingFalied then break; 2). the new version (v0.4.0.1) returns the success of adding disks. i.e. it returns true if a disk was added successfully. Code:
ISArcDiskAddingSuccess:= ISArcExAddDisks(...); if not ISArcDiskAddingSuccess then break; 3). this is the summarized difference. Code:
v0.4
procedure CurStepChanged(CurStep: TSetupStep);
begin
...
ISArcDiskAddingFalied := True;
...
repeat
if FileExists(...) then
begin
ISArcDiskAddingFalied:= ISArcExAddDisks(...);
if ISArcDiskAddingFalied then break;
ISArcExDiskCount := ISArcExDiskCount + 1;
end;
...
until true;
if (not ISArcDiskAddingFalied) and ISArcExInit(...) then
begin
...
end;
end;
Code:
v0.4.0.1
procedure CurStepChanged(CurStep: TSetupStep);
begin
...
ISArcDiskAddingSuccess := False;
...
repeat
if FileExists(...) then
begin
ISArcDiskAddingSuccess:= ISArcExAddDisks(...);
if not ISArcDiskAddingSuccess then break;
ISArcExDiskCount := ISArcExDiskCount + 1;
end;
...
until true;
if (ISArcDiskAddingSuccess) and ISArcExInit(...) then
begin
...
end;
end;
Last edited by BLACKFIRE69; 05-01-2023 at 21:32. |
| The Following User Says Thank You to BLACKFIRE69 For This Useful Post: | ||
Gehrman (06-01-2023) | ||
|
#23
|
|||
|
|||
|
@BLACKFIRE69
Thank you for the expansion of your little hint (steps 1 and 2) it was more than sufficient to help me understand the logic behind the instructions. Thanks again and apologies. |
| The Following User Says Thank You to Masquerade For This Useful Post: | ||
BLACKFIRE69 (06-01-2023) | ||
|
#24
|
||||
|
||||
|
ISArcEx - Quality Updates
Code:
How to Update:
- Just replace the old DLL(v0.4.0.1 - 2023-Jan-05)
with the new DLL(v0.4.0.1 - 2023-Mar-20).
Last edited by BLACKFIRE69; 03-04-2023 at 14:08. |
|
#25
|
|||
|
|||
|
Excellent DDL, switched to it from isDone. Thank you.
|
| The Following User Says Thank You to Tihiy_Don For This Useful Post: | ||
BLACKFIRE69 (11-06-2023) | ||
|
#26
|
|||
|
|||
|
I ask you to change the ISArcExCancel variable to boolean to match the general concept by analogy with ISArcExError.
Accordingly, if the installation was canceled, it is not an error. Why not cancel the example and make the download of an excellent unpacking by example: Quote:
Last edited by Tihiy_Don; 22-06-2023 at 23:23. |
|
#27
|
||||
|
||||
|
Update Available!
Code:
What's New - Some improvements. Code:
* How to update? >> just replace the old DLL with the new one. |
| The Following 5 Users Say Thank You to BLACKFIRE69 For This Useful Post: | ||
audiofeel (01-08-2023), ffmla (05-08-2023), hitman797 (01-08-2023), Lord.Freddy (01-08-2023), Tihiy_Don (01-08-2023) | ||
|
#28
|
|||
|
|||
|
Sir, plz add button click sounds to the script.
|
|
#29
|
||||
|
||||
|
ISArcEx v0.4.0.1 - 2023-Sep-04
What's new: Code:
* Added 'TotalFile' and 'CurrentFiles' into the callback function.
* Added new functions.
i. procedure ISArcExReduceCalcAccuracy;
- this procedure plays a crucial role in stabilizing the 'Time Remaining' and
'Data Transfer Speed' calculations, ensuring they change
smoothly and not too rapidly.
ii. function ISArcExInitEx(WinHandle: Longint; TimeFormat: Integer;
Callback: TCallbackEx): Boolean;
iii. procedure ISArcExCallbackInterval(MSec: Cardinal);
* This update may support long paths and special characters in the path (not tested).
* Some improvements and bug fixing.
Code:
type
TCallback = function(OverallPct, CurrentPct, DiskTotalMB, DiskExtractedMB: Integer;
DiskName, CurrentFile, TimeStr1, TimeStr2, TimeStr3, Speed: WideString): LongWord;
type
TCallbackEx = function(OverallPct, CurrentPct, DiskTotalMB, DiskExtractedMB,
TotalFiles, CurFiles: Integer; DiskName, CurrentFile, TimeStr1, TimeStr2,
TimeStr3, Speed: WideString): LongWord;
. Last edited by BLACKFIRE69; 13-09-2023 at 16:12. |
| The Following 7 Users Say Thank You to BLACKFIRE69 For This Useful Post: | ||
audiofeel (04-09-2023), Cesar82 (04-09-2023), Fak Eid (05-09-2023), hitman797 (04-09-2023), Lord.Freddy (04-09-2023), Razor12911 (06-09-2023), Tihiy_Don (04-09-2023) | ||
|
#30
|
|||
|
|||
|
Hi @audiofeel @Blackfire69,
I use FMXModule.iss which already has IsArcEx injected. So I don't have to import IsArcEx.dll. Can anyone of you provide the latest Module with the following changes included. I also observed that speed change was an issue, even reported it way back to audiofeel as well. Thanks for the fix. |
![]() |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| ASIS: Advanced Simple Installer Script | KaktoR | Conversion Tutorials | 1477 | 20-05-2026 10:52 |
| XTool 2020 (Plugins) | Razor12911 | Conversion Tutorials | 405 | 24-12-2024 05:30 |
| Game Installer Designer by altef_4 | altef_4 | Conversion Tutorials | 236 | 28-05-2021 02:54 |
| Best Compression For Archiving | brispuss | PC Games | 12 | 03-01-2020 13:34 |
| Compression Questions | yasitha | Conversion Tutorials | 10 | 09-01-2019 12:29 |