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;
}
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
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... :)