PDA

Ver la Versión Completa : mail to:


nicocer
31-03-2004, 20:16:15
hola con esta sentencia redacto un mail.
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
Hola !

Probando y probando logre el siguiente codigo

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
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
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 (http://www.nevrona.com/Indy/). 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
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


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
Sigo con el codigo y he avanzado un pasito mas, pero sigo sin poder mandar mails.


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
Con este codigo mandas un mail, espero que les sirva


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.