Hey there, I am trying to make a version of foobar2000 for myself (not for release any time soon because I don't want to bother contacting the original developer, etc) but I'm trying to "futureproof" the installer by making it an online installer. Unfortunately, it doesn't seem to download anything when I ask it to, and all I end up with is the empty shell of an App folder that I started with. Below is the full text of the installer.ini file because I see no other reason it shouldn't work. Thanks for anyone who can lend a hand.
installer.ini
[MainDirectories] RemoveAppDirectory=true [DownloadFiles] DownloadURL=http://www.foobar2000.org/getfile/70f03d723458dbb71ded8a78e3ae6bdb/foobar2000_v1.2.3.exe DownloadName=foobar2000 DownloadFilename=foobar2000_v1.2.3.exe AdditionalInstallSize=11162 AdvancedExtract1To=Data\themes AdvancedExtract1Filter=themes\*.fth AdvancedExtract2To=App\foobar2000\components AdvancedExtract2Filter=components\*.* AdvancedExtract3To=App\foobar2000\icons AdvancedExtract3Filter=icons\*.* AdvancedExtract4To=App\foobar2000 AdvancedExtract4Filter=themes\*.dll AdvancedExtract5To=App\foobar2000 AdvancedExtract5Filter=themes\*.exe AdvancedExtract6To=App\foobar2000 AdvancedExtract6Filter=themes\*.html AdvancedExtract7To=App\foobar2000 AdvancedExtract7Filter=themes\*.css
The filter can't take directories as part of the filter. Just extract all to App\foobar2000
Sometimes, the impossible can become possible, if you're awesome!
First, the file doesn't seem to download at all. I actually tried to use the "DownloadTo" to see if it would work, but it didn't.
Second, I was under the assumption the filter allowed for paths because of this paragraph in the reference (especially the bold part):
AdvancedExtract1To and AdvancedExtract1Filter are used for more advanced extraction from ZIP files as well as many installer EXEs. The AdvancedExtract#To entries should specify the relative path to where the files will go within the installed portable app (typically App\AppName). The AdvancedExtract#Filter entries are used to specify a filter for the files to be extracted and are in the same format used by 7-zip. Some examples include .txt for all text files, * for all files, *a for files that contain the letter a, Src\*.cpp for all cpp files within the src directory, etc. ** can be used to indicate all files in the archive recursively (including sub-directories). Up to 10 entries can be made. AdvancedExtract#To supports the use of <ROOT> to indicate the app’s root directory.
Because the id in the URL is variable.
You have 70f03d723458dbb71ded8a78e3ae6bdb - I just visited the site and the link id for me was 4dda14ef11494f037d92e1a177389e44.
Not sure what it is based on - it definitely isn't session-based as I had the same id in two browsers. May be based on your IP, or any number of other things.
I didn't realize it was dynamic. Well, either I'm going to find a way around it, or I guess I'll have to settle for non future-proofed. Thanks for the tip.