2012-07-30 59 views
8

Estoy enviando correos electrónicos a nuestros clientes desde Java. Y no hay ninguna autenticación para nuestro SMTP. Así que utilizo el siguiente código en Java para enviarlo sin autenticación:Envío de SmtpClient sin autenticación

Properties props = new Properties(); 
Session session; 
props.put("mail.smtp.auth", "false"); 
session = Session.getInstance(props, null); 

Este código funciona bien para enviar correos electrónicos desde Java. Pero quiero enviar correos electrónicos usando ASP.NET y C#. Pero no puedo enviarlo. Para enviarlo usando C# Estoy utilizando el siguiente código:

SmtpClient smtp = new SmtpClient(); 
smtp.Host = "<My smtp.Host>"; 
smtp.EnableSsl = false; 
smtp.Credentials = CredentialCache.DefaultNetworkCredentials; 
smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 
smtp.Send(message); 

pero me da el siguiente error:

The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.1 Relaying not allowed: <Here email address of To>

cómo enviar a él sin autenticación?

Respuesta

19

Desde Msdn. If the UseDefaultCredentials property is set to false and the Credentials property has not been set, then mail is sent to the server anonymously.

+0

No lo entiendo. ¿Qué propiedad debo configurar para enviarla sin autenticación? – hims056

+0

Elimina 'smtp.Credentials = ...' completamente y establece 'UseDefaultCredentials' en falso. –

+1

Oh ... Intentó pero dando el mismo error. – hims056

Cuestiones relacionadas