Nils
Posts: 17
Joined: Fri Jun 22, 2018 11:55 am

Web Installer unable to download CAB file

Hi,

I have created a project for a web installer and every feature is put into its own CAB file next to the msi. During installation one feature is unable to download the CAB file(s) from the server. The error message states that the network location could not be reached but other features at the same location don't cause this issue and downloading works fine when putting the URL into the browser directly. The only difference for this feature seems to be, that it is split into multiple CAB files (2x 2GB and one ~1GB). Tested on two machines with same result, files hosted on AWS.

Error message:

Code: Select all

MSI (s) (F0:74) [12:26:52:933]: Download of URL resource https://XXX/cabFiles/Editor.cab failed with last error 131
MSI (s) (F0:74) [12:26:52:933]: Note: 1: 1606 2: https://XXX/cabFiles/Editor.cab 
Error 1606. Could not access network location https://XXX/cabFiles/Editor.cab.
MSI (s) (F0:74) [12:27:17:077]: Product: XXX -- Error 1606. Could not access network location https://XXX/cabFiles/Editor.cab.
Any idea what might be causing this issue?

Best
Nils
Catalin
Posts: 7515
Joined: Wed Jun 13, 2018 7:49 am

Re: Web Installer unable to download CAB file

Hello Nills,

Unfortunately, I can not say for sure why this happens.

In order for me to further investigate this issue, could you please forward me the following resources:

- a copy of the .AIP file

- a download link of the setup

- the verbose log of the installation process

by e-mail at support at advancedinstaller dot com?

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Nils
Posts: 17
Joined: Fri Jun 22, 2018 11:55 am

Re: Web Installer unable to download CAB file

Hi Catalin,

I created a less cluttered project producing the same issue and I will send you an email asap.

Best
Nils
Catalin
Posts: 7515
Joined: Wed Jun 13, 2018 7:49 am

Re: Web Installer unable to download CAB file

Hello Nils,

First of all, please accept my apologies for the delayed reply, but this scenario was really troublesome and it took me several days (few hours per day) of testing it.

Also, thank you for the provided files, they proved to be really useful.

I have first tested the simplest scenario I could think about - simply running the .EXE file provided by you. I was indeed able to reproduce the issue in this case.

By having a look over the log file, I could notice the following error:
MSI (s) (3C:E0) [10:41:19:610]: Download of URL resource https://url/cabFiles/Editor.cab failed with last error 131
As I was not familiar with what this error means, I have started my research and I could find the following article:

System Error Codes

where I could notice that the error from the log file means:
ERROR_NEGATIVE_SEEK

131 (0x83)

An attempt was made to move the file pointer before the beginning of the file.
As it can be seen in the link title, this is a system error and it can be caused by so many things (I saw this issue in Java related threads, C related threads, 7-zip related threads). The closest I could get was with the 7-zip related threads (as the .CAB files are basically archives), but unfortunately to no avail.

The next thing I did was to download all the resources from the server (the .MSI and the 4 .CAB files) and then I extracted the resources from the .CAB files (using 7-zip). After doing so, I have pointed the resources (the two .TXT files extracted from the .CAB file) in the provided .AIP file and then I rebuilt the project.

I have then created a Web Server using IIS and then uploaded all the files there - the .CAB files resulted from the build process.

Important mention: As the only thing our bootstrapper does in case of a Web Installer is downloading the .MSI and then running it with the following command:

Code: Select all

msiexec /i urlPath/yourMSI.msi
I have decided to work directly with the .MSI file.

At this point, what I could notice is a mismatch between the .CAB files generated by me (when building the setup) and the .CAB files download from you Web Server. Attached below is a screenshot where you can see the difference:
Differences.png
Differences.png (137.38 KiB) Viewed 6386 times
On the left side, are the .CAB files that were downloaded from your Web Server and, on the right side, are the .CAB files generated at build time. As you can see, there is a 3, respectively 2 KB diff between them.

Now, going back to our scenario: After building the .AIP file and adding the files to my server, I have run it and, surprisingly, everything worked as expected.

With this in mind and the fact that the HTTP Response code was 200 (OK) according to the log file, this made me think that there must be something related to the .CAB files and how they are interpreted by your Web Server.

Unfortunately, I can not explain why the files would be larger when downloaded from the Web Server as compared to when you build them.

With this being said, could you please try to Rebuild your project, upload the files to the web servers and then manually download them? After doing so, could you please confirm that their sizes are the same (the size at build time and the size when downloaded)?

Hope this helps somehow.

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Nils
Posts: 17
Joined: Fri Jun 22, 2018 11:55 am

Re: Web Installer unable to download CAB file

Sorry that I had to dig up this old post but thanks to Corona insanity and parental leave I couldn't invest proper time in this issue until now. First off thanks for the time you already invested!

Files downloaded from AWS had the same size as pre-upload. I created a minimal server on my local machine, rebuild everything on the latest Advanced Installer version, and I am still unable to download files that are split because of size locally. Installing only a small feature with one cab worked fine from the same installer as before. Since you mentioned that you were able to install from your server, did you use my AIP project or did you create one of your own?

Best
Nils
Catalin
Posts: 7515
Joined: Wed Jun 13, 2018 7:49 am

Re: Web Installer unable to download CAB file

Hello Nils,
Sorry that I had to dig up this old post but thanks to Corona insanity and parental leave I couldn't invest proper time in this issue until now. First off thanks for the time you already invested!
You are always welcome!

Also, no worries about the delayed reply, it is totally understandable.
Since you mentioned that you were able to install from your server, did you use my AIP project or did you create one of your own?
This was quite a while ago, but if I remember right, I have tested using your .AIP file, yes.

To be fully honest with you, I have just started investigating this behavior once again recently as it was reported by a second user.

This is a really troublesome scenario to investigate mostly because we do not do anything special here, everything being handled by the Windows Installer.

Our .EXE boostrapper simply launches the MSI with the URL path, like so:

Code: Select all

msiexec /i <url>/yourMSI.msi
the rest (including the download process of the CAB files) being handled by the Windows Installer.

Also, as far as I could notice, this issue does not have a history. It was firstly reported by you and now by a second user.

Additionally, when I was testing this for the second user, the same has happened as in your case. I was able to replicate the behavior using his setup, but I was not able to replicate the behavior using my own web-server.

I will try to further investigate this and I will update this thread if I will find anything useful.

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”