Einzelnen Beitrag anzeigen

WladiD

Registriert seit: 27. Jan 2006
Ort: Celle
135 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: XE2.Mail über SSL per Indy an KV Connect-Client senden

  Alt 24. Apr 2013, 07:02
Hi,

das Indy-SVN-Repository findest du hier: http://www.indyproject.org/sockets/download/svn.en.aspx. Mit der mitgelieferten Indy-Version hat's bei mir nicht geklappt, wobei ich zugeben muss, dass wir hier immer noch D2007 einsetzen.

Bei mir funktioniert das Senden und Empfangen über den KV-Connect-Client bereits einwandfrei.

Hier die relevanten Code-Abschnitte:

Delphi-Quellcode:

procedure TYourClass.Send
begin
  SMTP := TIdSMTP.Create(nil);
  try
    SMTP.IOHandler := CreateSSLHandler(SMTP); // siehe unten
    SMTP.UseTLS := utUseImplicitTLS;
    SMTP.Host := FConfig.SMTPHost;
    SMTP.Port := FConfig.SMTPPort;
    SMTP.Username := FConfig.SMTPUsername;
    SMTP.Password := FConfig.SMTPPassword;
    SMTP.Connect;
//...
end

function TYourClass.CreateSSLHandler(Owner: TComponent): TIdSSLIOHandlerSocketOpenSSL;
begin
  Result := TIdSSLIOHandlerSocketOpenSSL.Create(Owner);
  Result.OnVerifyPeer := SSLVerifyPeerEventHandler;
  Result.SSLOptions.Method := sslvSSLv3;
  Result.SSLOptions.VerifyMode := [sslvrfClientOnce];
end;

function TYourClass.SSLVerifyPeerEventHandler(Certificate: TIdX509; AOk: Boolean; ADepth,
  AError: Integer): Boolean;
begin
  Result := AOK or
    // Selbsterstellte Zertifikate akzeptieren
    (AError = X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT);
end;
Waldemar Derr
Profil bei GitHub
  Mit Zitat antworten Zitat