Logo

¡Bienvenido a Stratos!

Acceder

Foros



Enviar Mails desde C#

Iniciado por KronoX, 01 de Agosto de 2007, 12:52:01 AM

« anterior - próximo »

KronoX

Buenas tardes... el siguiente código puede enviar desde C# mails de correos de gmail a correos de gmail... sin embargo quisiera hacerlo mas versatil y poder enviar a mails en hotmail... etc... en realidad sólo he probado con gmail y hotmail, y con hotmail no funciona tengo entendido que el smpt para hotmail es "mail.hotmail.com" pero lo he probado y no funciona tampoco... por favor si alguien pudiera modificar el código para que funcione también para hotmail... y advertirme si hay que hacer mas modificaciones para otros correos en yahoo, etc... se lo agradecería muchísimo.

private void btnEnviarMail_Click(object sender, EventArgs e)
       {
           System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
           msg.To.Add(txtTo.Text);
           msg.From = new MailAddress(txtFrom.Text, txtName.Text, System.Text.Encoding.UTF8);
           msg.Subject = txtSubject.Text;
           msg.SubjectEncoding = System.Text.Encoding.UTF8;
           msg.Body = txtBody.Text;
           msg.BodyEncoding = System.Text.Encoding.UTF8;
           msg.IsBodyHtml = false;

           //Aquí es donde se hace lo especial
           SmtpClient client = new SmtpClient();
           client.Credentials = new System.Net.NetworkCredential(txtFrom.Text, txtPassword.Text);
           client.Port = 25;
           client.Host = "smtp." + getHost(txtFrom.Text);
           //client.EnableSsl = true; //Esto es para que vaya a través de SSL que es obligatorio con GMail
           try
           {
               client.Send(msg);
           }
           catch (System.Net.Mail.SmtpException ex)
           {
               MessageBox.Show(ex.Message);
           }
       }
       private string getHost(string p_strMail)
       {
                string l_strHost = "";
                ... //código para obtener los caracteres después de la arroba
                return l_strHost;
       }
l éxito no depende tanto del talento como de la energía y de la buena voluntad

Vicente

No tengo mucha idea, pero Hotmail está ya más muerto que carracuca. Deberías investigar el mandar correo a Live y no a Hotmail.

Un saludo,

Vicente

KronoX

Si bueno en realidad he buscado para hotmail y no para Live Hotmail, y ahora que leí esa respuesta se me encendió una esperanza   :D  , pero ahora entré a un correo que tengo en Live Hotmail y mandé a propósito un correo erroneo para ver el smtp... y bueno me salió...

Delivery Status Notification (Failure)
De: postmaster@mail.hotmail.com


Perdón si estoy equivocado pero en algún lugar en internet leí que eso me indicaba el smtp, y bueno al parecer es el mismo, bueno pero no importa. En todo caso... alguien sabe ¿De qué otra forma puedo enviar correos de hotmail a hotmail y de cualquier otro a cualquier otro?... muchas gracias...  :)
l éxito no depende tanto del talento como de la energía y de la buena voluntad






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.
Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.