ExtractArchive, [Files] Hash

36 views
Skip to first unread message

Grob Fabian

unread,
Sep 1, 2025, 11:16:40 AM (6 days ago) Sep 1
to inno...@googlegroups.com

Hi

 

I use the new feature “ExtractArchive” in an AfterInstall-script:

It blocks the progress of the indeterminate progress bar.

 

Also I tried to use the new “Hash”-flag, to check if a file should be installed but it seemed not to work. Does this only work in combination with the download of the file?

I was looking for a simple possibility to check, if a file without version-number matches the one in the installer. I resolved it with a custom method in the “Check”-flag of my Files-entry:

Function checkHash(verifyHash: String): Boolean;

Var

  filePath: String;

Begin

  Result := true;

  filePath := ExpandConstant(CurrentFileName);

  if FileExists(filePath) Then

    Begin

      Result := LowerCase(GetSHA256OfFile(filePath)) <> LowerCase(verifyHash);

    End;

End;

A built-in functionality for this would be nice.

 

Another question:

The help for my software is in HTML and contains a lot of small files (~12000 files, total size: ~500MB). The installation is a lot quicker, when I pack them into a 7z-file, install this file and extract it in the installer instead of install the files directly.

 

Thanks!


Fabian Grob | Software Engineer |
Fabia...@zund.com
Zünd Systemtechnik AG | Industriestrasse 8 | CH-9450 Altstätten
T: +41 71 554 82 86 |
www.zund.com

Emailbanner_Fachpack_Simac.gif

Martijn Laan

unread,
Sep 1, 2025, 4:06:07 PM (5 days ago) Sep 1
to inno...@googlegroups.com
Hi,

Op ma 1 sep , 'Grob Fabian' via innosetup <inno...@googlegroups.com> schreef:

It blocks the progress of the indeterminate progress bar.

Sorry, I don't understand.

Also I tried to use the new “Hash”-flag, to check if a file should be installed but it seemed not to work.

Hash is a parameter, not a flag. It is used to verify source files. There's no relation to checking if a file should be installed.

Does this only work in combination with the download of the file?

No. 

I was looking for a simple possibility to check, if a file without version-number matches the one in the installer.

Why do you want to do that?

A built-in functionality for this would be nice.

Why? Isn't it working already?

Another question:

The help for my software is in HTML and contains a lot of small files (~12000 files, total size: ~500MB). The installation is a lot quicker, when I pack them into a 7z-file, install this file and extract it in the installer instead of install the files directly.

What's the question?

I'm sorry that I have more questions than answers.

Greetings,
Martijn

Fabian Grob

unread,
Sep 2, 2025, 9:40:50 AM (5 days ago) Sep 2
to innosetup
Hi

First to the last thing: Installing a 7z-file and extract it with the installer is a lot faster instead of when the files are in the [files]-section.
Is there a reason for this? Or a simple way, to improve this behaviour without my way around?

This is the reason, why I am doing the other stuff.
I let the 7z-file in the program-directory, so I can compare it to the one contained in the installer - if their hashes match, I do not need to install it at all. For this, I have to do the comparison manually.


I am talking about the progressbar while copying the files, the one which can be accessed by 'WizardForm.ProgressGauge'. This one stopps moving when 'ExtractArchive' is called. I think, I also tested a OutputProgressBar, the progress-bar stops there as well.

Regards,
Fabian

PS: Can I somehow remove the signature of my first mail? 😅 I now created an account, to no longer have the signature.

Fabian Grob

unread,
Sep 2, 2025, 10:31:47 AM (5 days ago) Sep 2
to innosetup
I create new differnt posts regarding the two different topics.
Please remove this - thank you.

Reply all
Reply to author
Forward
0 new messages