-
utilizando System.Web.Mail;
Botón vacío privado1_Click (remitente del objeto, System.EventArgs e)
{
//Crea una instancia del objeto MailMessage
System.Web.Mail.MailMessage correo=nuevo System.Web.Mail.MailMessage();
//Defina la dirección de envío del correo electrónico. Puede completar una dirección inexistente a voluntad. Así es como se hace el spam ^_^.
mail.From=" [email protected] ";
//Definir la dirección de recepción del correo electrónico
//Establecer una lista separada por punto y coma de direcciones de correo electrónico de destinatarios
correo.To=" [email protected] ";
//Definir la dirección BCC del correo electrónico
//Establecer una lista de direcciones de correo electrónico separadas por punto y coma
//mail.Bcc=" [email protected] ";
//Definir la dirección copia al carbón del correo electrónico
//Establecer una lista de direcciones de correo electrónico separadas por punto y coma
//mail.Cc=" [email protected];[email protected]
//Definir el asunto del correo electrónico
mail.Subject="prueba de correo ancha asp.net enviar aprendizaje de correo";
//Establece el tipo de contenido del cuerpo del correo electrónico
//Aquí lo enviamos en formato HTML
mail.BodyFormat=System.Web.Mail.MailFormat.Html;
//Establece el cuerpo del correo electrónico
mail.Body="Pruébelo y vea si funciona";
//Las cadenas encerradas en @ comienzan con @ y también están entre comillas dobles. Por ejemplo:
// La ventaja de citar @ es que la secuencia de escape no se procesa, por lo que puedes escribir fácilmente una cadena, como un nombre de archivo completo:
//@"c:DocsSourcea.txt " // en lugar de "c:\Docs\Source\a.txt"
//Para incluir una comilla doble dentro de una cadena entre comillas @, utilice dos pares de comillas dobles:
// @"""¡Ahoy!"" gritó el capitán." // "¡Ahoy!" gritó el capitán.
// Otro uso del símbolo @ es con el identificador referenciado (/referencia), que resulta ser una palabra clave de C#.
// http://msdn2.microsoft.com/zh-CN/library/362314fe(VS.80).aspx
//Establecer un archivo adjunto
System.Web.Mail.MailAttachment mailAttachment=new System.Web.Mail.MailAttachment(@" F:dddddd.txt");
//Adjuntar un archivo adjunto al correo electrónico
mail.Attachments.Add(mailAttachment);
//Continuar agregando múltiples archivos adjuntos aquí
mailAttachment=new System.Web.Mail.MailAttachment(@"F:asp_net Enviar correo Code_Baidu Know.mht");
mail.Attachments.Add(mailAttachment);
//Servidor SMTP, porque está configurado en esta máquina, así que escriba 127.0.0.1. Si está conectado a otro servidor, como el buzón 163, escriba smpt.163.com.
Sistema.Web.Mail.SmtpMail.SmtpServer="127.0.0.1";
// Se dice que muchos servidores SMTP requieren autenticación para evitar el spam. Parece que se llama protocolo smpt extendido o algo así.
//Pero lo que está conectado aquí es su propio servidor smpt, smpt simple, por lo que no hay verificación.
// En cuanto a si se requiere verificación al enviar correos electrónicos desde el servidor SMPT local a 163 u otros buzones de correo, no lo sé durante la prueba real, los correos electrónicos se pueden enviar a.
//@163.com , @eyou.com, @x.cn, no se requiere verificación.
//verificar
//mail.Fields.Add(" http://schemas.microsoft.com/cdo/configuration/smtpauthenticate ", "1");
//Nombre de inicio de sesión
//mail.Fields.Add(" http://schemas.microsoft.com/cdo/configuration/sendusername ", "widebright");
//contraseña de inicio de sesión
//mail.Fields.Add(" http://schemas.microsoft.com/cdo/configuration/sendpassword ", "widebright");
//enviar
System.Web.Mail.SmtpMail.Send(correo);
}
El código anterior utiliza la clase System.Web.Mail.SmtpMail proporcionada en .Net para enviar correos electrónicos y conectarse automáticamente.
Servidor SMPT para enviar correos electrónicos. Algunas personas usan clases TCP o sockets para escribir código para implementar el protocolo smpt, pero eso requiere mucha codificación, protocolos, etc., lo cual es bastante problemático. Hice uno antes de usar VB. El protocolo smpt es relativamente simple, pero la codificación de esos archivos adjuntos requiere mucho código.
Este es solo el código para enviar mensajes SMTP. Si desea recibir mensajes y esperar, debe tener un servidor pop3 que admita el protocolo pop3.
El servidor smtp ya está instalado después de instalar IIS. Pop3 no viene con él, por lo que puede ser un poco más complicado de instalar. ¡Aún no lo he probado!
Configuración del servidor SMTP
Lo habilité yo mismo después de instalar IIS 5.1. Acabo de configurarlo en el Administrador de servicios de información de IIS.
1. Agregue varios nombres de dominio en Dominios: haga clic derecho en Dominios en "Servidor virtual SMTP predeterminado"
Seleccione "Nuevo" para crear uno nuevo, ---> Tipo de dominio y seleccione "Remoto".
El nombre de dominio se completa con 163.com eyou.com x.cn respectivamente, porque quiero enviar correos electrónicos a estos servidores, y lo mismo que en el código anterior.
===============
correo.To=" [email protected] ";
===============
En consecuencia, a quién desea enviar un correo electrónico, debe configurar el nombre de dominio correspondiente. Si no lo configura, el correo electrónico no se podrá enviar.
2. Haga clic derecho en un nombre de dominio como 163.com, seleccione "Propiedades" y marque "Permitir que el correo entrante se retransmita a este dominio. El correo electrónico sólo se puede enviar después de comprobarlo; de lo contrario, seguirá habiendo un error". .
Para el dominio de ruta a continuación, simplemente seleccione el valor predeterminado Usar DNS para enrutar al dominio.
La clave es configurar el nombre de dominio del servidor SMTP correspondiente en IIS y luego podrá enviar correos electrónicos. Probé varios buzones de correo en la página asp.net y se pueden enviar normalmente. Al igual que el buzón 163, haga clic en el botón para enviar y lo recibirá.
Acabo de descubrir que puedes agregarlo.
*.com
*.neto
*cn
Nombre de dominio que coincida con la mayoría de las direcciones de correo electrónico.
Si agrega el nombre de dominio *.com, puede enviar cartas a @163.com y @eyou.com
La prueba pasó en el entorno Windows XP+visual sutdio 2003+iis5.1.
Sin embargo, solo descubrí que las cartas enviadas al buzón de Sina no fueron recibidas y no sé por qué.
Se produce un error típico de SMTP 550 5 7 1 No se puede retransmitir
Además de que el nombre de dominio del dominio no está configurado correctamente, puede haber
La casilla de verificación "permitir que las computadoras que se autentican exitosamente retransmitan" no está seleccionada en la configuración del servidor virtual SMTP. Como se muestra a continuación,
Primero abra la página Acceso de la página de propiedades del Servidor virtual SMTP:
Luego haga clic en el botón "Retransmisión" y vea si está seleccionado "Permitir que todas las computadoras que se autentiquen exitosamente retransmitan, independientemente de la lista anterior":