Hola,
El error es muy claro: "HTTP/1.1 301 Moved Permanently" significa que el contenido que buscas no se encuentra en esta URL, pero la propia respuesta HTTP debería darte dónde se puede encontrar el contenido (parámetro
Location).
Hace mucho tiempo que no uso los Indy, pero debería haber alguna propiedad que hable de los "redirects" o algo por el estilo.
En caso de que no existiera una propiedad parecida a esto, deberás hacerlo de forma manual, capturando el parámetro
Location y hacer un GET a esa URL.
Saludos.
Edit: La propiedad que te comentaba se llama "HandleRedirects", debes poner esta propiedad a True, y en principio, se debería de solucionar el problema.
Ejemplo:
Código Delphi
[-]procedure TfActualizacionOnLine.Descargar(Origen,Destino:String);
Var
Stream: TFileStream;
begin
If FileExists(Destino) then
SysUtils.DeleteFile(Destino);
Stream := TFileStream.Create(Destino, fmCreate);
try
IdHTTP.HandleRedirects := True; IdHTTP.Get(Origen,Stream); tDescargado := tDescargado + Stream.Size;
finally
Stream.Free;
end;
end;