Antes que nada, hola a todos en el foro:
Uso delphi 7 y las indy version 9, tengo un problema tengo un procedimiento con el cual envio correos desde mi aplicación y todo funcionaba perfectamente bien con el cliente que usaba el sistema, solo que un dia cambiaron de servidor los dominios y ahi empezo el problema en outlook, windows mail e incredimail sale la siguiente leyenda al enviar un correo:
"El servidor al cual esta conectado esta utilizando un certificado de seguridad que no pudo ser comprobado
El nombre CN del certificado no coincide con el valor pasado
Desea continuar utilizando este servidor?"
y pone los botones Si y No le doy y se va el correo pero desde mi aplicación no se va y a lo ultimo me manda el mensaje "connection closed gracefully" me imagino que quizas se queda esperando una respuesta pero como la pregunta no sale oes no hay respuesta y el correo no se va
Este es mi codigo de delphi
Código Delphi
[-]
procedure TFSCHCAPHC.BitBtn1Click(Sender: TObject);
var
NomArch:String;
Cuerpo:TStringList;
y:Integer;
begin
NomArch:='C:\Sis Agag\Tmp\Bitacora'+Ceros(IntToStr(scod),6)+'CH.Pdf';
Cuerpo:=TStringList.Create;
Application.CreateForm(TFSCHCAPHI, FSCHCAPHI);
try
FSCHCAPHI.IniciaDatos(scod);
FSCHCAPHI.QuickRep1.ExportToFilter(TQRPDFDocumentFilter.Create(NomArch));
TIdAttachment.Create(IdMessage1.MessageParts,NomArch);
ProgressBar1.MaxValue:=Progressbar1.MaxValue+SizeFile(NomArch);
Cuerpo.Add('Le adjunto el archivo en Pdf de la bitacora de Codigo de Iniforme ');
Cuerpo.Add(' Atte. ');
Cuerpo.Add(' Lic. Rosario Cital. ');
IdMessage1.Body.Assign(Cuerpo);
IdMessage1.From.Text :=QuitaEspacios(DMSCH.FT_EmprEMAIL.AsString);
IdMessage1.Recipients.EMailAddresses := QuitaEspacios(Edit1.Text);
IdMessage1.Subject := Edit2.Text;
IdMessage1.CCList.EMailAddresses := QuitaEspacios(Edit3.Text);
IdMessage1.BccList.EMailAddresses := QuitaEspacios(Edit4.Text);
if DMSCH.FT_EmprSSL.AsString='Si' then begin
SSL2.SSLOptions.Method := sslvTLSv1;
SSL2.PassThrough := True;
SMTP.IOHandler := SSL2;
SMTP.Port :=465;
end
else
SMTP.Port := 25;
SMTP.AuthenticationType := atLogin;
SMTP.Username := QuitaEspacios(dmsch.FT_EmprEMAIL.AsString);
SMTP.Password := QuitaEspacios(DMSCH.FT_EmprPassEmail.AsString);
SMTP.Host := QuitaEspacios(DMSCH.FT_EmprHOST.AsString);
StatusBar.Panels[1].text:='Iniciando Envio....';
SMTP.Connect;
if DMSCH.FT_EmprSSL.AsString='Si' then begin
SMTP.SendCmd('STARTTLS', 220);
SSL2.PassThrough := False;
end;
if (SMTP.AuthenticationType <> atNone) then
SMTP.Authenticate;
try
SMTP.Send(IdMessage1);
finally
SMTP.Disconnect;
end;
finally
FSCHCAPHI.Free;
end;
end;
agradezco cualquier comentario de su parte o sugerencia.
Gracias por todo.