Explain me please how to download a file from a server using SSL (https://). I have not found an appropriate answer in the Internet.
Everybody says about TIdSSLIOHandlerSocket, but I have only TIdSSLIOHandlerSocketOpenSSL. I have an error 'could not load SSL library' if I use TIdSSLIOHandlerSocketOpenSSL. Some people say it needs a library, but the most even do not mention about it. Do I need to use libraries from here http://www.indyproject.org/sockets/SSL.EN.aspx ?
I have those DLLs in program's folder. According to: http://edn.embarcadero.com/article/31279 "At runtime, Indy attempts to load libeay32.dll and ssleay32.dll." I do not know from where Indy tries to load the DDLs -> I have an error: 'Could not load SSL library.'
procedure TForm1.FormCreate(Sender: TObject);
var UpdateMemoryStream:tmemorystream;
begin
try
UpdateMemoryStream:=TMemoryStream.Create;
try
idhttp2.Get('https://example.com/list.rar',UpdateMemoryStream); //I have: Exception class EIdOSSLCouldNotLoadSSLLibrary with message 'Could not load SSL library.'
except
on E : Exception do
begin showmessage('Error: '+E.Message);
end;
end;
UpdateMemoryStream.SaveToFile('d:\1.rar');
finally
UpdateMemoryStream.Free;
end;
end;
Why do I have this error? I have Delphi 2010.
TIdSSLIOHandlerSocket
is the class name in Indy 9.TIdSSLIOHandlerSocketOpenSSL
is the new class name in Indy 10. – Remy Lebeau