SSL := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
with SSL do begin
Destination := SMTPHost + ':' + IntToStr(SMTPPort);
Host := SMTPHost;
MaxLineAction := maException;
Port := SMTPPort;
DefaultPort := 0;
SSLOptions.Method := sslvTLSv1;
SSLOptions.Mode := sslmUnassigned;
SSLOptions.VerifyMode := [];
SSLOptions.VerifyDepth := 0;
end;
SMTP.IOHandler := SSL;
SMTP.UseTLS := utUseExplicitTLS;
SMTP.UserName := SMTPUser;
SMTP.Password := SMTPPassword;
Porquê? Porque para enviar emails via Gmail, só via conexão segura, SSL (sslvTLSv1) .Nesse caso, as DLLs do OpenSSL tem de estar disponiveis pra sua aplicação.
Pra baixar o OpenSSL que rode com o Indy, vá em http://indy.fulgan.com/SSL/ e baixe de acordo com sua versão do Indy. Eu uso a versão OpenSSL 0.9.8h juntamente com o Indy que vem no Delphi 2007 e funciona bem. A unica limitação que achei foi fazer funcionar numa DLL ISAPI sob o IIS, pelo fato de que o IIS já tem seu próprio SSL.
Bom proveito.
Nenhum comentário:
Postar um comentário