Sent to wine-devel to get feedback on initial idea and implementation.
New program in programs/getsffile (Get Sourceforge File). It downloads a file from Sourceforge download section, finding a suitable mirror by itself.
This should solve part of the mirroring problem we have for the Mozilla ActiveX control, to make it easy to install on demand, and can most probably be used by other similar things as well.
You can also specify a preferred mirror in the registry (Software\Wine\getsffile, key SFPreferredMirror. If the file is not available from that mirror (mirror down, not yet synced, etc.), it'll try another one (up to 3 times). The list of mirrors is got from sf.net, it's not maintained in getsffile.
Basically, to use it to get the Mozilla ActiveX control, what needs to be done is to actually put the control on sf (along with a zip containing 2 needed dlls, one of them is msvcp60.dll), and change the download logic in shdocvw to call getsffile for both files rather than do the download itself. The installation part is almost the same (it'd be nice if the zip would be installed at the same time, even nicer if it wouldn't be needed but that's Mozilla's part).
Note that it's still not 100% proof, some mirrors give a 404 back and it's not properly detected. Is it possible to detect such things while using URLDownloadToFile?
The whole dialog is ripped from shdocvw (Mike McCormack's work), the rest is my own development.
Vincent