Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-09-2012
Allien Allien is offline
Registrado
 
Registrado: jun 2008
Posts: 2
Poder: 0
Allien Va por buen camino
Enviar Correo a través de IdSmtp con Gmail desde Windows Server 2008!!

Hola que tal a todos los foristas.

Antes que nada agradezco el tiempo que se toman en leer este mensaje.

Expongo la situación.


He creado una aplicación para enviar correos desde una cuenta de Gmail a través de los componentes de INDY. IdSmtp, IdMessage y IdSSLIOHandlerSocketOpenSSL.

Como seguramente muchos sabrán Gmail utiliza encriptación a través de SSL, por ello es necesario tener las librerias de OpenSSL "libeay32.dll", "libSSL32.dll" y "ssleay32.dll" motivo por el cual descargue las librerías y las he colocado en el directorio de la aplicación.

La aplicación funciona adecuadamente desde mi máquina donde eh desarrollado la aplicación.

Finalmente necesito que esta aplicación se ejecute desde un servidor el cual tiene Windows Server 2008.

Pero eh aquí el problema, cuando intento enviar un correo desde el servidor, al momento de internar mandar el mensaje, parece que no se hace adecuadamente el HandShake, hasta el momento no eh comprobado mi teoría.

Obviamente eh copiado las librerías de OpenSSL en el Servidor, eh comprobado que se tenga salida a Internet, que el Firewall no bloquee la aplicación, etc.

La aplicación se queda inhibida, y consume enormes recursos de procesamiento.

Les dejo aquí el código de la aplicación que repito, funciona pero sólo en el equipo donde se desarrollo.



//_______________________________________________________________________
Componentes


object smtp: TIdSMTP
IOHandler = IdSSLIOHandlerSocketOpenSSL1
AuthType = atSASL
SASLMechanisms = <>
Left = 112
Top = 400
end
object IdMessage1: TIdMessage
AttachmentEncoding = 'UUE'
BccList = <>
CCList = <>
ContentType = 'text/html'
Encoding = meDefault
FromList = <
item
end>
Recipients = <>
ReplyTo = <>
ConvertPreamble = True
Left = 176
Top = 400
end
object IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL
Destination = ':25'
MaxLineAction = maException
Port = 25
DefaultPort = 0
SSLOptions.Method = sslvSSLv3
SSLOptions.Mode = sslmClient
SSLOptions.VerifyMode = []
SSLOptions.VerifyDepth = 0
Left = 144
Top = 400
end


procedure TForm2.Button1Click(Sender: TObject);
var
mail : TIDMessage;

begin

IdSSLOpenSSLHeaders.Load;

with smtp do begin
IoHandler:=IdSSLIOHandlerSocketOpenSSL1;
AuthType := atDefault;
Host := 'smtp.gmail.com';
port := StrtoInt(txtPort.text); //<-587
useTLS:=utUseRequireTLS;
Username := 'usuario';
Password := 'contraseña;
end;
mail := TIdMessage.Create(Self);
// CONFIGURACION DEL MENSAJE A ENVIAR
with mail do begin
From.Address := 'dirección@origen.com';
Recipients.EMailAddresses := txtDestino.text;
Subject := txtMensaje.text;
body.Text := txtMensaje.text;
end;
try
// CONEXION CON EL SERVIDOR DE CORREO
begin
memo1.Lines.add('conectando con el servidor');
smtp.Connect;
memo1.Lines.add('conectado');
try
// ENVIO DEL MENSAJE
begin
memo1.Lines.add('enviando mensaje');
smtp.Send(mail);
end;

except
on E: Exception do
begin
memo1.Lines.add('Fallo al enviar: ' + E.Message+ ' Tiempo Tomando '+labTiempo.caption);
end;
end;

memo1.Lines.add('Mensaje enviado satisfactoriamente'+ ' Tiempo Tomando '+labTiempo.caption);
end;

except on e:exception do
begin

memo1.Lines.add('Fallo al enviar: ' + E.Message+ ' Tiempo Tomando '+labTiempo.caption);

end;
end;
mail.Free;

end;

//_______________________________________________________________________

Saludos...
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
enviar un correo desde ¿ yahoo, gmail ? avmm2004 Internet 1 24-01-2012 18:15:17
Enviar mensaje desde gmail con Indy 10 axelafonso Internet 3 13-01-2012 18:11:39
enviar un email desde delphi a hotmail o gmail abraham SQL 30 06-08-2007 16:46:20
Enviar correo con SMTP de GMAIL via INDY 10 (idSMTP) lpedrazzi Internet 4 31-12-2006 22:30:26
ENVIAR CORREO mi cuenta de correo es GMAIL ASAPLTDA PHP 1 16-11-2006 00:54:03


La franja horaria es GMT +2. Ahora son las 02:18:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi