Yes, yours url works fine. But this url -- sadly, not http://www.rnrmm.ru/mods/mm2/victorsmods/bgplus/BGPlus_3.mm2
Yep... just as i expected.
That site doesn't like other downloaders than browsers.
It checks the user-agent of the requester.
You can simply add the following line (with vHTTP.RequestHeaders.Add) to the DonwloaFile-procedure.
(It will make your application look like Chrome on Windows 7 to that site)
procedure DonwloaFile(OnProgress: TOnProgress);
const
cUrl = 'http://www.rnrmm.ru/mods/mm2/victorsmods/bgplus/BGPlus_3.mm2';
// ....
begin
try
vHTTP := TFPHTTPClient.Create(nil);
// add this line
vHTTP.RequestHeaders.Add('User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36');
vHTTP.HTTPMethod('HEAD', cUrl, nil, [200]);
// ....
B.T.W. you might want to change that name of the DonwloaFile-procedure.
(I suspect that was a typo in the original example)
Edit:
Any user-agent will do for that site.
So this will work too:
vHTTP.RequestHeaders.Add('User-Agent:MyApplication');
But maybe emulating a real browser (like Chrome) is better if you download from other sites which would check this user-agent too.