var
i:integer;
begin
Memo.Lines.Add('Verificando el Usuario...');
form6.ShowModal;
if(Form6.Desconectar=0) Then
begin
Memo.clear;
//Autentificación en el servidor
IdSMTP1.AuthenticationType :=atLogin;
IdSMTP1.Username := trim(txtUsuario.Text);
IdSMTP1.Password :=trim(txtclave.Text);
// Nombre del Servidor ...
IdSMTP1.Host:=trim( txtServidor.Text );
// Puerto de correo ...
IdSMTP1.Port:=25;
try
Memo.Lines.Add('Conectando con ' + trim( txtServidor.Text ) + ', puerto 25' );
// Conectando ...
IdSMTP1.Connect;
Except
// Imposible conectar con el servidor de correo ...
Memo.lines.add('Fallo en la conexion con el servidor SMTP.');
Exit;
end;
Memo.lines.add( 'Componiendo mail ...' );
with Mensaje do begin
// Dirección origen ...
if ( trim( txtDe.Text ) <> '' ) then
From.Text:= trim( txtDe.Text )
else
From.Text:='desconocido@anonimo.dominio';
Memo.lines.add( 'Direccion origen : ' + From.Text );
// Dirección destino. Se pueden indicar varias ...
Recipients.EMailAddresses:=( trim( txtPara.Text ) );
Memo.lines.add( 'Dirección destino : ' + trim( txtPara.Text ) );
// Direcciones copia. Se pueden indicar varias ...
if( trim( txtCC.Text ) <> '' ) then begin
CClist.EMailAddresses:=( trim( txtCC.Text ) );
Memo.lines.add( 'CC : ' + trim( txtCC.Text ) );
end;
// Titulo del mail ...
if( trim( txtAsunto.Text )='' ) then
subject:='[Sin titulo]'
else
subject:= trim( txtAsunto.Text );
Memo.lines.add( 'Asunto : ' + subject );
// Adjuntos. Se pueden indicar varios ...
if ( trim( txtAdjunto.Text ) <> '') then
begin
TIdAttachment.Create(Mensaje.MessageParts,txtAdjunto.Text );
Memo.lines.add( 'Archivo Adjunto : ' + trim( txtAdjunto.text ) );
end;
if(MemoAdjunto.Visible=true) then
begin
for i:=0 to MemoAdjunto.Lines.Count-1 do
TIdAttachment.Create(Mensaje.MessageParts,MemoAdjunto.Lines[i] );
Memo.lines.Add( 'Archivos Adjuntos :');
Memo.lines.AddStrings( MemoAdjunto.Lines );
end;
// Cuerpo del mail ...
if ( mCuerpo.Lines.Count > 0 ) then begin
body.Assign(mCuerpo.Lines);
Memo.lines.add( 'Añadiendo cuerpo del E-mail ...' );
Memo.lines.add( ' ' );
end;
Memo.lines.add( 'Enviando ... ');
// Enviando mail ...
if ( trim( txtPara.Text ) <> '' ) then begin
IdSmtp1.Send(mensaje);
Memo.lines.add( 'E-Mail enviado.');
end else
Memo.lines.add( 'E-Mail no enviado, no se especificó dirección de destino.' );
// Desconectando ...
IdSmtp1.Disconnect;
end;
Memo.lines.add( 'Desconectado');