PDA

View Full Version : Decompression error #3



andrelernhart
06-01-2014, 09:44 AM
Hi all,

I installed (using a SB Script) an .exe in C:\Program Files(x86)\MyApp\MyApp.exe

MyApp.exe runs fine, it's not corrupted and not open by any user.

A second SB Script should patch this MyApp.exe, but bombs with Decompression error [#3]. UAC Execution Level is "requireAdministrator"

(SB 8.1 Developer Edition. Windows 7 Pro.)

Any ideas?
Thanks in advance, André

linder
06-02-2014, 12:48 AM
Hi André,

There is not enough information available to find out what is going wrong in this case. Would it be possible for you to send the "original" .sb8 project and MyApp.exe application files and the "patch" .sb8 and MyApp.exe files to support [at] lindersoft [dot] com?

Friedrich

andrelernhart
06-02-2014, 09:58 AM
Hi Friedrich,

I sent the material as requested.
Thanks in advance, regards
André

linder
06-02-2014, 10:11 AM
André,

we have received the files and we'll review the projects later today.

BTW, the manipulation of %_SB_SETUPTYPEID% and %_SB_FEATURESID% in your project is not allowed and may result in an unexpected result.

Friedrich

linder
06-02-2014, 10:32 AM
André,

See attached screenshots. We have created a simple project that installs the "Alas3240.exe" file version 3.4.1.19. The install file size is 1.48 MB. Then we created an update that binary patches the original 3.4.1.19 to 3.4.1.20. The patch file size is 461 KB.

It works as expected without any problem on XP, Windows 7 x64 and Windows 8.1.

So IMO, it's caused by your illegal manipulation of %_SB_SETUPTYPEID% and %_SB_FEATURESID% in your project. If you are interested, I can send you our test project source codes.

What do you think?

Friedrich

andrelernhart
06-03-2014, 01:25 AM
Hi Friedrich,
thanks a lot for your time!
I finally found the reason: the template sets %_SB_BACKUPDIR% to "%_SB_INSTALLDIR%\BACKUP".
In my somewhat complicated script, the .exe path is defined in the registry (as well as the root path for database and help files).
Part of patching the .exe is copying the to-be-patched-file to a folder (%_SB_BACKUPDIR%) -- which does not exists. And here it bombs with decompression error #3

I set the %_SB_BACKUPDIR to the folder where the .exe resides (<exe-folder>\BACKUP); since the .exe is there in all setuptypes, we are sure that we have an existing backup folder, and backups for .exe and all the db and .chm stuff will be backuped there also.

Resolved - and maybe a contribution t the knowledge base.
regards, André

linder
06-03-2014, 01:33 AM
André,

Perfect !!! Thanks for the update :)

Friedrich