Delphi: Abrufen von EMails via Indy inkl. SSL

Der folgende Code ist hilft hier vor allem bei TLS und SSL geschützten Accounts. Es eine erste Version und soweit sind keine Fehler aufgefallen.

procedure TForm1.Button9Click(Sender: TObject);
var
i, j,MsgAnz: Integer;
IdSSLIOHandlerSocket: TIdSSLIOHandlerSocketOpenSSL;
bodytext: string;
begin
IdSSLIOHandlerSocket := TIdSSLIOHandlerSocketOpenSSL.Create(Self);
idpop31.IOHandler := IdSSLIOHandlerSocket;
idpop31.UseTLS := utUseImplicitTLS;
IdPOP31.Host := '';
IdPOP31.Port := xxx;
IdPOP31.UseTLS := utUseImplicitTLS;
IdPOP31.Username := '';
IdPOP31.Password := '';
IdPOP31.Connect;
if IdMessage1.ContentType='text/plain' then
memo1.text:=IdMessage1.Body.Text;
MsgAnz := IdPOP31.CheckMessages;
mailzeug.Lines.Add('Anzahl E-Mails:' + IntToStr(MsgAnz));
for i:= 1 to MsgAnz do
begin
idpop31.Retrieve(i, IdMessage1);
mailzeug.Lines.Add('E-Mail Nr:' + IntToStr(i)+ sLineBreak +
' Von:' + IdMessage1.From.Text + sLineBreak +
' Betreff:' + IdMessage1.Subject);
bodytext:=idmessage1.Body.Text;
mailzeug.Lines.Add(bodytext);
IdMessage1.Clear;
idpop31.Delete(i);
end;
IdPOP31.Disconnect;
FreeAndNil(IdSSLIOHandlerSocket);
end;