Senden einer E-Mail über GMail in .NET [duplizieren]

8

Ich erhalte den folgenden Fehler, wenn ich versuche, eine E-Mail in meinem C # -Programm zu senden. Ich verwende Visual Studio 2008 unter Windows 7. Ich würde zuerst meinen Code einfügen und dann den Fehler:

%Vor%

Und die Fehlermeldung lautet wie folgt:

%Vor%

Warum gibt es immer ein Zeitlimit? Ich bin sicher, dass ich die richtige SMTP-Server-Adresse und Port-Nummer für Google Mail habe, da ich meine Outlook mit dem gleichen konfiguriert habe. Irgendwelche Hilfe oder Ideen?

Nach dem Ändern des Ports auf 587 lautet der Fehler wie folgt. Ich habe nur meine Firewall deaktiviert, um zu sehen, ob das das Problem war und es NICHT war. Der neue Fehler (für Port 587):

Das ist der Fehler für mich, wenn ich den Port auf 587 ändere:

%Vor%

Danke, VP

    
zack 14.04.2010, 19:46
quelle

5 Antworten

5

Es ist Ihr Port ... Google Mail benötigt Port 587.

Wenn das nicht funktioniert, kann ich Ihnen einfach meine Email-Klasse geben.

BEARBEITEN:

%Vor%

BEARBEITEN: Fügen Sie dies Ihrem Code hinzu: email_client.UseDefaultCredentials = false;

    
SpoiledTechie.com 14.04.2010 19:51
quelle
2

Da Sie auf System.Web verweisen, gehe ich davon aus, dass es sich um eine Webanwendung handelt, obwohl ich das aus Ihrer Beschreibung nicht ganz verstehe. Wenn es sich tatsächlich um eine Webanwendung handelt, stellen Sie sicher, dass Ihre Datei web.config den folgenden Eintrag enthält:

%Vor%

Dies verhindert, dass Sie diese Informationen in Ihrer Klasse email_log_files angeben müssen

    
Robert Williams 14.04.2010 19:55
quelle
1

Nicht sicher, ob das nützlich ist, aber haben Sie überprüft, dass Ihre IP-Adresse keine E-Mails blockiert, die von Ihrer IP gesendet werden? Ich hatte einmal ein ähnliches Problem, am Ende habe ich mir das ganze Wochenende umsonst die Haare ausgezogen.

Also, es ist einen Scheck wert, nur um das zu beseitigen. Viel Glück.

    
Helen Neely 14.04.2010 20:36
quelle
0

Könnte eine Firewall oder so etwas sein. Ich finde, dass der beste Weg, es auszuprobieren, ist, sich einfach manuell mit dem Server zu verbinden.

Öffnen Sie einfach eine Eingabeaufforderung und schreiben Sie:
telnet your.mail.server 25

Dies gibt Ihnen normalerweise eine ähnliche Antwort wie "220 your.mail.server ESMTP".

Wenn Sie Vista oder Win7 verwenden, müssen Sie möglicherweise zuerst den integrierten Telnet-Client aktivieren (gehen Sie zu "Programme und Funktionen" und wählen Sie "Windows-Funktionen ein- oder ausschalten" und wählen Sie einfach den Telnet-Client aus)

    
Hans Olsson 14.04.2010 19:53
quelle
0

Versuchen Sie, die vollständige E-Mail-Adresse im NetworkCredential-Benutzernamen

anzugeben     
Hun1Ahpu 14.04.2010 19:54
quelle

Tags und Links