E-Mail senden über keine Anmeldeinformationen, C#
jeder.
Ich brauche zum senden einer No-reply E-mail mit C#. Netzwerk-admin sagte mir, dass der SMTP-server ist so konfiguriert, dass Sie diese Art von E-mails (mit jedem Konto ohne Passwort). Ich versuche dieses:
System.Net.NetworkCredential credencials = new System.Net.NetworkCredential();
credencials.UserName = "[email protected]";
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient();
mail.To.Add(email);
mail.From = new MailAddress("[email protected]");
mail.Subject = subject;
mail.IsBodyHtml = true;
mail.Body = message;
SmtpServer.Host = "smtpserver";
SmtpServer.Port = 25;
SmtpServer.Credentials = credencials;
SmtpServer.EnableSsl = true;
SmtpServer.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
SmtpServer.Send(mail);
Habe ich versucht, ohne Anmeldeinformationen, mit Leeren Zeichenfolge als Kennwort, aber nichts scheint zu funktionieren.
Bin ich vergessen keine speziellen parameter oder Konfiguration?
Sind Sie eine Ausnahme? Wenn ja, könnten Sie die Ausnahme hinzufügen Nachricht als gut?
Sie können SmtpClient senden Sie die E-Mail-Nachrichten.überprüfen Sie die link
Nur ein Einfaches: kann Nicht senden E-Mail-System.Net.E-Mail.SmtpClient.Send(MailMessage message) , die ich versuchte drucken, die stacktrace auch, aber es ist die gleiche Ausnahme. HINWEIS: Meine VS ist in Spanisch und ich übersetz nur die Ausnahme, der text kann in Englisch.
Überprüfen Sie die InnerException. Es sollte enthalten detaillierte Informationen
Sind Sie sicher, dass über die Verwendung von SSL auf port 25? Regel port 465 mit SSL.
Sie können SmtpClient senden Sie die E-Mail-Nachrichten.überprüfen Sie die link
Nur ein Einfaches: kann Nicht senden E-Mail-System.Net.E-Mail.SmtpClient.Send(MailMessage message) , die ich versuchte drucken, die stacktrace auch, aber es ist die gleiche Ausnahme. HINWEIS: Meine VS ist in Spanisch und ich übersetz nur die Ausnahme, der text kann in Englisch.
Überprüfen Sie die InnerException. Es sollte enthalten detaillierte Informationen
Sind Sie sicher, dass über die Verwendung von SSL auf port 25? Regel port 465 mit SSL.
InformationsquelleAutor Joel Luevano | 2015-08-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, die Kombination der Angabe eines Benutzernamens und eines mit SSL auf port 25 bedeutet Authentifizierung wird versucht, scheitert jedoch und das falsche Protokoll der Verhandlung versucht wird. Wenn Sie den code ändern das folgende, was passiert dann?
Gehe ich davon aus, dass hier der server, den Sie verwenden möchten, unterstützt E-mail-relay ohne Authentifizierung, die Regel sollte jeder vernünftige Konfiguration über das internet.
es bedeutet, es kann nicht schalten Sie den FQDN, den Sie gegeben haben, die in die IP-Adresse des Servers. Versuchen Sie zuerst über die IP des Servers, dann arbeiten Sie sich zurück.
Danke Mann, deine Lösung scheint sinnvoll, lassen Sie es mich versuchen und ich werde sein posting zurück.
Ich benutzt die IP anstelle des FQDN und es funktioniert. Danke, Sie haben mein Leben gerettet.
InformationsquelleAutor albal
Versuchen, entfernen Sie diese Zeile um zu sehen, welche Fehlermeldung erhalten Sie nach der änderung:
SmtpServer.Anmeldeinformationen = credencials;
Minimieren die Menge der Eigenschaften, die Sie festlegen. Ich glaube, das minimum, die Sie benötigen ist zu instanziieren smtpclient und mailmessage.
Minimum:
einstellen:
E-mail.Zu
E-mail.Aus
E-mail.Thema
E-mail.Körper
InformationsquelleAutor elsausmc
Es würde Ihnen viel helfen wenn du deinen code in eine
try
&catch
block, so dass Sie sehen können, ob Ausnahmen geworfen werden. (Versucht, zu kommentieren, nicht genug Ruf, meine Entschuldigung)InformationsquelleAutor Just Do It