Excelente! funcionó de pelos!
Muchas gracias, estaba muy perdido
y para los que buscan lo mismo, un pequeño ejemplo para manadar un correo, ingresando los datos en un formulario html y procesandolo con c#
codigo html
Código:
<form name="enviando" method="post" action="enviocorreo.aspx" >
De<input type="text" name="dequien" />
Para<input type="text" name="para" />
Asunto<input type="text" name="asunto" />
Cuerpo<input type="text" name="cuerpo" />
<input type="submit" name="envio" value="envio" />
</form>
Si usas visual studio, agregas un nuevo elemento aspx, ponle el nombre enviocorreo (si quieres ponerle otro entonces la llamada del form action hay que cambiarlo a ese nombre) y en el codebehind agrega esto
codigo c#
Código:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Net.Mail; //para enviar correos
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string desde;
string para;
string asunto;
string cuerpo;
desde = Request.Form["dequien"]; //ej: [email protected]
para = Request.Form["para"]; //ej: [email protected]
asunto = Request.Form["asunto"]; // lo que sea
cuerpo = Request.Form["cuerpo"]; //palabras, para imagenes ver como adjujntar
System.Net.Mail.MailMessage oMsg = new System.Net.Mail.MailMessage();
oMsg.To.Add(para.ToString());
oMsg.From = new MailAddress(desde.ToString());
oMsg.Subject = asunto.ToString();
oMsg.Body = cuerpo.ToString();
oMsg.IsBodyHtml = true; //puede ser false si es texto plano
System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient();
smtp.Host = "direccion ip del servidor de correo";
smtp.Credentials = new System.Net.NetworkCredential("usuario", "pass"); // por si es una cuenta con clave
smtp.EnableSsl = false; // puede ser true si requiere ssl
try
{
smtp.Send(oMsg);
Response.Write("Correo enviado con éxito");
}
catch (SmtpException ex)
{
string mesg = ex.Message;
Response.Write(mesg);
}
}
}
Yo lo probe con un servidor local de correo linux y una centa habilitada para ello, tengo entendido que s puede hacer con gmail y otras cuentas mas no hotmail.
Gracias de nuevo por la ayuda