Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   mail to: (https://www.clubdelphi.com/foros/showthread.php?t=8750)

nicocer 31-03-2004 20:16:15

mail to:
 
hola con esta sentencia redacto un mail.
Código:

ShellExecute(GetDesktopWindow(),"", "mailto: mail@clubdelphi.com ?Body=cuerpo  ?Subject=Asunto","","",1);

Que caracter reservado va entre Body y Subject , para que se cargue cada uno .porque el resultado de esta sentencia es abrir un mail y en el cuepro va ?subject=Asunto.


Gracias
Nicocer

nicocer 31-03-2004 22:25:36

Algo resolvi
 
Hola !

Probando y probando logre el siguiente codigo
Código:

void Mail (String mail, String fechaR, String, String apellido, String nombre, String numeror, String transaccion)
{

char* m = ("mailto:" + mail +
      "?Subject=  Reservas "
      "&Body=En el día de la fecha se ha reservado un proyector: "+
      "  Nro. "numero +
      "- Fecha: "+ fechaR +
      "- Transacción: "+ transaccion+
      "- Responsable: "+ apellido + " " + nombre ).c_str();

ShellExecute(GetDesktopWindow(),"", m ,"","",1);

La pregunta es como hago para que cada linea aprarezaca en el mail en lineas diferentes

roman 31-03-2004 23:28:00

Cita:

Empezado por nicocer
como hago para que cada linea aprarezaca en el mail en lineas diferentes

Para insertar un cambio de línea usa %0D%0A al final de cada una.

Por otra parte ¿no has considerado la opción de usar, por ejemplo, las componentes Indy? Usar la etiqueta mailto puede estar bien para pequeños mensajes pero si tu aplicación va a hacer un mayor uso de correo creo que te convendría más algo más robusto.

// Saludos

nicocer 01-04-2004 14:49:44

Creo que si
 
Gracias por la ayudita.

Asi que me aconsejas la componente indy, la verdad que esto de usar el maito:, me esta tirando bastante errores. En realidad lo que necesito es que los mail se disparen solo, no que me abra la aplicación de correo determinada.

Si me confirmas que la componete Indy tiene esas caracteristica. ya me pongo a buscar información

Gracias Moderador

roman 01-04-2004 17:48:36

Las Indy manejan muchos protocolos como POP3, SMTP, FTP, etc. relacionados con Internet de manera que puedes mandar y recibir correos sin necesidad de una aplicación externa.

Yo mismo no los conozco mucho y tan sólo he "jugado" un poco con ellos pero son componentes muy reconocidas. Te recomiendo que busques en estos foros para leer opiniones más calificadas que la mía.

Por otra parte, vienen incluidos con Delphi o bien puedes bajarte la última versión de su página. Vienen con muchos ejemplos listos para compilar de manera que rápidamente te puedes dar una ida de su capacidad y tendrás una muy buena fuente para entender su funcionamiento.

// Saludos

nicocer 01-04-2004 19:40:25

y ahora indy
 
Hola:
Ahora tengo problema con este codigo.

No me funca
Por lo que estuve viendo casi toda la información de Indy está, pero para delhi.
de c++ no hay casi nada . trate de traducirlo pero no me anda.
Complia pero tira error de Socket.

Voy a seguir con mis pruebas y errores para ver si logro hacer andar algo.

Chua amigos


Código:

TIdMessage *mess;
mess->From->Address("clubdelphi@servidor.com");
IdSMTP1->BoundIP = "10.0.1.2";
IdSMTP1->UserId = "usuario";
IdSMTP1->Password = "ipassword";
IdSMTP1->Connect();


nicocer 02-04-2004 22:25:28

Depurando
 
Sigo con el codigo y he avanzado un pasito mas, pero sigo sin poder mandar mails.

Código:

TIdMessage* mess= new TIdMessage( Application->MainForm );
mess->Clear();
mess->From->Address = "direccion@exactas.unlp.edu.ar";
mess->Body->Add("chicas");
IdSMTP1->Password = "pasww";
IdSMTP1->UserId = "usuario";

IdSMTP1->Connect();
IdSMTP1->Send(mess);

IdSMTP1->Disconnect();

El error que me tiras es el siguiente
503 5.0.0 Need Rcpt (recipient)

nicocer 02-04-2004 22:42:25

Lo logre!!!!!!!!!!!!111
 
Con este codigo mandas un mail, espero que les sirva

Código:

TIdMessage* mess= new TIdMessage( Application->MainForm );

mess->Clear();
mess->Recipients->EMailAddresses = "destinatarior@xx.com";
mess->From->Address = "remitente@exactas.unlp.edu.ar";
mess->Body->Add("prueba");
IdSMTP1->AuthenticationType = atNone;

IdSMTP1->Connect();
IdSMTP1->Send(mess);
mess->Free();
IdSMTP1->Disconnect();

Estoy choco lo logre
Nos vemos hasta la proxima consulta

Nicocer el que se auto contesta.


La franja horaria es GMT +2. Ahora son las 07:11:52.

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