Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
GMAIL Versand Fehler smtp.gmail.com: Es können keine Daten gelesen werden
userid15621
myCSharp.de - Member



Dabei seit:
Beiträge: 109

Themenstarter:

GMAIL Versand Fehler smtp.gmail.com: Es können keine Daten gelesen werden

beantworten | zitieren | melden


            MailMessage msg = new MailMessage();

            msg.From = new MailAddress("[email protected]");
            msg.To.Add("[email protected]");
            msg.Subject = "Hello world! " + DateTime.Now.ToString();
            msg.Body = "hi to you ... :)";
            SmtpClient client = new SmtpClient();
            client.Host = "smtp.gmail.com";
            client.Port = 465;
            client.EnableSsl = true;
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.UseDefaultCredentials = true;
            client.Credentials = new NetworkCredential("[email protected]", "XXXX");
            client.Timeout = 20000;
            try
            {
                client.Send(msg);
                Console.WriteLine("OK");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
            finally
            {
                msg.Dispose();
            }

            Console.Read();

https://support.google.com/a/answer/176600?hl=de
Fehler
Fehler: Von der Übertragungsverbindung können keine Daten gelesen werden: net_io_connectionclosed.
Ich weiß es nicht was ich falsch mache. Kann mir jemand einen Tipp geben.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von userid15621 am .
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15536
Herkunft: BW

beantworten | zitieren | melden

Nach fast 7 Jahren im Forum kann man erwarten, dass der Hilfesuchende die vollständige Fehlermeldung inkl. Message - und wenn vorhanden - die InnerException postet.

Als Hinweis: Google erwartet eine hohe Sicherheit von Apps beim Zugriff auf deren Mailsystem.
Kann aber in den Einstellungen (https://www.google.com/settings/security/lesssecureapps) deaktiviert werden Zugriff weniger sicherer Apps auf Ihr Konto zulassen
private Nachricht | Beiträge des Benutzers
userid15621
myCSharp.de - Member



Dabei seit:
Beiträge: 109

Themenstarter:

beantworten | zitieren | melden

https://www.google.com/settings/security/lesssecureapps ist deaktiviert (vielleicht dauert es noch etwas bis die Einstellung greift).

Komplette Fehlermeldung habe ich oben nachträglich angepasst.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15536
Herkunft: BW

beantworten | zitieren | melden

Wenn Du Credentials angibst, dann muss UseDefaultCredentials auf false sein.
Macht ja ansonsten auch wenig sinn.

Edit: nicht gesehen, dass UseDefaultCredentials doppelt ist.... ;(
Macht natürlich kein sinn..
private Nachricht | Beiträge des Benutzers
Taipi88
myCSharp.de - Member

Avatar #avatar-3220.jpg


Dabei seit:
Beiträge: 1044
Herkunft: Mainz

beantworten | zitieren | melden

Hi,

ich würde mal Port 587 versuchen. (DefaultCredentials ist ja eigentlich auf false)

Falls nicht - auf folgender Website sieht man wies geht:http://stackoverflow.com/questions/32260/sending-email-in-net-through-gmail

LG
private Nachricht | Beiträge des Benutzers
userid15621
myCSharp.de - Member



Dabei seit:
Beiträge: 109

Themenstarter:

beantworten | zitieren | melden

Habe mit anderen Provider probiert, bei Google.com besteht das Problem immer noch.

Aber wenn es mit anderen Provider funktioniert, dann ist das Problem ja gelöst.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15536
Herkunft: BW

beantworten | zitieren | melden

Ja, liegt an der App Security.
Wie bereits gesagt. Google hat das vor einigen Wochen hart eingeführt....
private Nachricht | Beiträge des Benutzers
userid15621
myCSharp.de - Member



Dabei seit:
Beiträge: 109

Themenstarter:

beantworten | zitieren | melden

...Stelle ich das auf OFF Google Funktion. geht das auch nicht und viel schlimmer dann geht mein Outlock nicht mehr....

Problem wurde erstmal anders gelöst.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15536
Herkunft: BW

beantworten | zitieren | melden

Es wäre im Sinne einer Gemeinschaft, wenn Du erzählst, wie das Problem gelöst wurde.
Dann muss der nächste nicht nochmal fragen. Alles ein Geben und Nehmen ;-)

PS: Google hat nicht nur diese Einstellung für die Appsecurity...
private Nachricht | Beiträge des Benutzers
Noob6666
myCSharp.de - Member



Dabei seit:
Beiträge: 17

beantworten | zitieren | melden

Zitat
Es wäre im Sinne einer Gemeinschaft, wenn Du erzählst, wie das Problem gelöst wurde.
Dann muss der nächste nicht nochmal fragen. Alles ein Geben und Nehmen ;-)

Moin Mädels :D,

da ich auch mit dem Google Zeugs zu kämpfen hatte, hab ich es tatsächlich doch noch geschafft es hinzubekommen
Emails über ne Desktop Anwendung zu senden. Dachte mir ich teile einfach meine Erkenntnisse mit euch.

Schritt 1: IMAP aktivieren in den EMaileinstellungen.
"Öffnen Sie Gmail auf Ihrem Computer.
Klicken Sie rechts oben auf "Einstellungen" Einstellungen und dann Alle
Einstellungen aufrufen.
Klicken Sie auf den Tab Weiterleitung & POP/IMAP.
Klicken Sie im Abschnitt "IMAP-Zugriff" auf IMAP aktivieren.
Klicken Sie auf Änderungen speichern."

Schritt 2: Im Sicherheitsbereich eures Kontos "Zugriff weniger sicherer Apps" aktivieren.

Schritt 3: Code einfach übernehmen und anpassen



            try
            {                
                MailMessage mail = new MailMessage();
                mail.To.Add("Empfänger");
                mail.From = new MailAddress("Absender");
                mail.Subject = "Test!";
                mail.Body = "Testmail";
                mail.IsBodyHtml = true;
                SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587);
                smtp.UseDefaultCredentials = false;
                smtp.EnableSsl = true;
                smtp.Credentials = new                System.Net.NetworkCredential("Absender", "Passwort vom Absender");
                smtp.Send(mail);
                MessageBox.Show("mail Send");
            }
            catch (Exception ex)
            {
                Console.WriteLine (ex.ToString());
            }

viel Spaß damit!
private Nachricht | Beiträge des Benutzers
Stefan.Haegele
myCSharp.de - Member

Avatar #avatar-3068.jpg


Dabei seit:
Beiträge: 431
Herkunft: Untermeitingen

beantworten | zitieren | melden

Ich wundere mich immer wieder, wie leichtfertig wichtige Sicherheitseinstellungen einfach deaktiviert werden, weil man nicht in der Lage ist (oder will) das Problem sauber zu lösen.

Sorry, habe ich *kein* Verständnis dafür. Hast du Zuhause auch das Türschloss ausgebaut, weil dir das mir diesen Schlüsseln zu kompliziert ist?

Kann sein, dass ich hier gerade etwas hart reagiere - muss aber meiner Meinung auch mal gesagt werden
private Nachricht | Beiträge des Benutzers
Noob6666
myCSharp.de - Member



Dabei seit:
Beiträge: 17

beantworten | zitieren | melden

Moin,

Ich hab echt kein Problem mit konstruktiver Kritik aber nur seine "Meinung" abladen!?!?!?

Ich meine OK versteh deinen Standpunkt der ja auch Sicherheitstechnisch durchaus berechtigt ist und nicht unter Bullshit fällt
und den ich auch mit dir definitiv teile. Aber was soll man weiter mit deinem Post anfangen????????
Was möchtest du vermitteln außer das ich es nicht "richtig" gemacht habe und nicht verstanden habe was ich mir da eigentlich einbrocke?
Den Vergleich mit dem Türschloss find ich aber sehr gut

Steht dort irgendwo das ich seit 10 Jahren Senior-Entwickler bin? Nein.
Steht dort irgendwo das dass die ultimative Lösung ist? Auch nicht.

Kann es sein dass ich in den Anfängen stehe und nicht es einfach nicht besser weiß? Genau das is der Fall!
Kann es sein das ich nur auf die Lösung fokusiert war und den Sicherheitsaspekt gar nicht aufn Schirm hatte? Auch das ist richtig!


Kritisieren ist vollkommen ok, man nimmt ja auch was mit, wenn man einen Dialog führt. Aber keine Lösung oder Hinweise/Ableitungen anbieten wie man eine
saubere Lösung selber evaluieren kann, ohne zu hinterfragen was sich der gegenüber dabei gedacht hat und welchen Wissensstand er hat
ist einfach...........such dir was aus

Hab ein privates Spaß-Projekt gestartet um Erfahrungen zu sammeln. Nein ich benutze Gmail nicht als meine Haupt - Emailadresse für Korrespondenz oder ähnliches.
Ich hab die Adresse allein für Testzwecke erstellt.

Wie würde denn eine saubere und vor allem sichere Lösung denn aussehen für dich Stefan.Haegele? Lieber einen anderen Provider nehmen?
Wie und mit welchem EMail Provider realisiert man einen sicheren Zugriff ohne Sicherheitsvorkehrungen auszuschalten in .NET, wenn GMAIL es einem so schwer macht?

Wenn du auf solche fragen eine Antwort hast, darfst du dich gerne weiter austoben
private Nachricht | Beiträge des Benutzers
Stefan.Haegele
myCSharp.de - Member

Avatar #avatar-3068.jpg


Dabei seit:
Beiträge: 431
Herkunft: Untermeitingen

beantworten | zitieren | melden

Man sollte niemals die Macht eines Forums vergessen - auch schlechter/unsicherer Code wird dort gefunden und dann verwendet. Über eine Google Recherche mit den richtigen Keywords (ich habe mal gmail .net api versucht) kommen einige gute Artikel...
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Stefan.Haegele am .
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15536
Herkunft: BW

beantworten | zitieren | melden

Aber was ist denn an seinem Code per se jetzt schlecht, oder unsicher?
Ich verstehs leider auch nicht.

Ja, Google hat die SMTP Schnittstelle als user-unsicher definiert; technisch unsicher ist nochmal was anderes.
Ich würds prinzipiell auch anders lösen; aber zB Drucker können oft gar nicht anders ihr Zeug versenden.

Aber am Code seh ich jetzt strukturell nichts, was irgendwie technisch == unsicher ist.
private Nachricht | Beiträge des Benutzers
Stefan.Haegele
myCSharp.de - Member

Avatar #avatar-3068.jpg


Dabei seit:
Beiträge: 431
Herkunft: Untermeitingen

beantworten | zitieren | melden

Zitat von Abt
Aber was ist denn an seinem Code per se jetzt schlecht, oder unsicher?
Ich verstehs leider auch nicht.

Ja, Google hat die SMTP Schnittstelle als user-unsicher definiert; technisch unsicher ist nochmal was anderes.

Genau das ist für mich der Punkt - es gibt mit der GMail API eine gute, saubere Lösung um das Problem zu lösen.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15536
Herkunft: BW

beantworten | zitieren | melden

Ja aber Du kennst doch "das Problem" nicht, oder täusche ich mich?

Vllt programmiert er ja einen Drucker, der eben nur SMTP kann. Dann bringt Dir die API nichts.
Vllt programmiert er nur einen Spam Bot, der bewusst SMTP benutzen soll.
Vllt programmiert er nur ein Home Automatismus, der alle 10 Stunden was schickt.

Kommt halt immer drauf an.
Aber natürlich: die API ist der modernere Ansatz.
Technisch unsicher(er) nicht unbedingt. SMTP ist ein sicheres Protokoll.
private Nachricht | Beiträge des Benutzers