尝试TidSMTP.Connect时连接超时

时间:2011-04-11 14:15:20

标签: delphi indy

尝试与Gmail smtp服务器连接失败。

只是在那里挂起~20秒然后抛出错误“套接字错误#10060连接超时”。

我甚至尝试过复制并粘贴此post,但这也不起作用。

procedure TForm1.btn1Click(Sender: TObject);
var
  email      : TIdMessage;
  idSMTPGMail: TIdSMTP;
  idSSLGMail : TIdSSLIOHandlerSocketOpenSSL;
begin
  idSSLGMail                   := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
  idSSLGMail.SSLOptions.Method := sslvTLSv1;
  idSSLGMail.SSLOptions.Mode   := sslmUnassigned;

  idSMTPGMail                  := TIdSMTP.Create(nil);
  idSMTPGMail.IOHandler        := idSSLGMail;
  idSMTPGMail.UseTLS           := utUseExplicitTLS;

  email                           := TIdMessage.Create(nil);
  email.From.Address              := 'from';
  email.Recipients.EMailAddresses := 'recipient';
  email.Subject                   := 'test subject';
  email.Body.Text                 := 'test body';

  idSMTPGMail.Host     := 'smtp.gmail.com';
  idSMTPGMail.Port     := 587;
  idSMTPGMail.UserName := 'username';
  idSMTPGMail.Password := 'Password';

  idSMTPGMail.Connect;
  idSMTPGMail.Send(email);
  idSMTPGMail.Disconnect;

  email.Free;
  idSSLGMail.Free;
  idSMTPGMail.Free;
  Beep;

end;

有谁有任何想法我怎么能解决这个问题?

1 个答案:

答案 0 :(得分:1)

你是不是有机会在防火墙后面?