SendMail per SMTP -

  • VB.NET

Es gibt 14 Antworten in diesem Thema. Der letzte Beitrag () ist von AliveDevil.

    SendMail per SMTP -

    Haii Leute, ich melde mich heute noch einmal... 8-)

    Ich möchte gerne eine Mail per SMTP versenden und verwendet dazu
    ...diesen Code

    VB.NET-Quellcode

    1. System.Net.Mail
    2. Private Sub s_MailWithPassword()
    3. Dim Msg As New MailMessage
    4. Dim myCredentials As New System.Net.NetworkCredential
    5. myCredentials.UserName = "absender@t-online.de"
    6. myCredentials.Password = "vb-paradise"
    7. Dim mySmtpsvr As New SmtpClient()
    8. mySmtpsvr.Host = "smtpmail.t-online.de" : mySmtpsvr.Port = 25
    9. mySmtpsvr.UseDefaultCredentials = False
    10. mySmtpsvr.Credentials = myCredentials
    11. Try
    12. Msg.From = New MailAddress("absender@t-online.de")
    13. Msg.To.Add("") 'Empfänger
    14. Msg.Subject = "" : Msg.Body = "TestMail"
    15. mySmtpsvr.Send(Msg)
    16. MsgBox("E-Mail gesendet.", MsgBoxStyle.Information, Title:="Information")
    17. Catch ex As Exception
    18. MsgBox(Err.Number & ex.Message & ex.StackTrace.ToString) 'für evtl. Fehlermeldungen
    19. End Try
    20. End Sub

    Die Mail wird nicht versendet, da ein Fehler (s. anliegendes Bild) auftaucht. Es wird um eine sichere Verbindung gefordert. Wie stelle ich diese her bzw. wie umgehe ich diese? :S
    Bilder
    • sendMail.Err.JPG

      84,93 kB, 608×419, 231 mal angesehen
    Probier mal

    VB.NET-Quellcode

    1. mySmtpsvr.EnableSsl = True
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Salatbar schrieb:

    Verlangt t-online möglicherweise pop b4 smtp?

    Denke ich nicht, denn ich arbeite mit WindowsMail und authentifiziere mich nicht über SMTP-After-POP. :)

    @RodFromGermany:
    In welcher Codezeile würdest du denn "mySmtpsvr.EnableSsl = True" schreiben? Ich habe es nun probiert mit der Fehlermeldung, dass keine sicheren Verbindungen unterstützt werden (s. Anlage).
    Bilder
    • sendMail.Err.JPG

      71,95 kB, 664×363, 244 mal angesehen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „FreShmaKer“ ()

    Probier es mal so:

    VB.NET-Quellcode

    1. Dim mySmtpsvr As New SmtpClient()
    2. mySmtpsvr.EnableSsl = True 'SSL aktivieren
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    probier ma folgende adresse fürn smtp:
    smtpmail.t-online.de:587 + mySmtpsvr.EnableSsl = True

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „slice“ ()

    FreShmaKer schrieb:

    Denke ich nicht, denn ich arbeite mit WindowsMail und authentifiziere mich nicht über SMTP-After-POP.

    War auch nur ne Idee. :)
    Eine Frage nur zum Verständnis. Wenn schon SSL sollte das dann nicht wenigstens über Port 465 laufen?

    Edith sagte mir grade:
    es sollte immer noch pop b4 smtp sein. sonst bringt das ganze nix : erst spam dann eine mail? neee :) smtp after pop ??? das kennt ein mailserver? aber nur von known mta's

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Salatbar“ ()

    Dank zunächst für eure Lösungsvorschläge! :thumbsup:

    Ich habe nun den Port 25 und 587 probiert, leider beides mit der Meldung (s. Anlage), dass der Übertragungskanal geschlossen wurde.
    Wo liegt hier das Problem :?:
    Bilder
    • sendMail.Err.JPG

      69,93 kB, 650×382, 165 mal angesehen
    Welcher Code steht bei Dir im File Form1.vb, Zeile 66 :?:
    Was sagt MSDN dazu :?:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Haiii RodFromGermany :D

    Die Codezeile "66" lautet wie folgt:

    VB.NET-Quellcode

    1. mySmtpsvr.Send(Msg)

    Ich habe mich nun direkt mit dem Anbieter "T-Online" in Verbindung gesetzt. Ich sollte die Einstellungen aus "Windows Mail" oder "Outlook" übernehmen. Das habe ich auch getan, jedoch ohne Erfolg. Auf den Seiten von MSDN sowei bei Google :D habe ich keine Lösung zur Fehlerbehandlung gefunden.

    Ich habe nun die Konstellation probiert
    smtpmail.t-online.de bzw. securesmtp.t-online.de : Port 25 und 587

    Es verbleibt dabei, dass die Message nicht versendet wird :S
    Vielleicht solltest Du den Anbieter wechseln. :S
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    t-com ist sowieso scheiße drauf^^

    Die Fehlermeldung 5.7.0 besagt aber eig. dass die Benutzerdaten nicht korrekt sind.
    Sicher, dass man bei t-offline nicht diese komische Anschlusskennung o.ä. nutzen muss?

    Gruß,
    Manawyrm

    EDIT: Kleiner Tipp am Rande: GoogleMail geht für sowas 1a, und ist nebenbei noch ein klasse Mailanbieter </Werbung>

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Manawyrm“ ()

    Nur so nebenbei zum Thema "Sicherheit": Bist du dir 100%ig SICHER dass du deine Daten hardcodet in deinem Programm haben willst?
    Denn wenn du es willst, hast du schneller kein Postfach als dir lieb ist.
    Nutz für sowas lieber einen Mailversand per PHP.
    Ich will dich nur vor warnen, nicht dass du später hier ankommst und sagst, dass dein Account "gehackt" wurde.