Email empfangen

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Dodo.

    Email empfangen

    Liebe VB Coder
    Schon im Vorraus , ich bin ein Anfänger der auf eure Hilfe angewiesen ist.
    Ich habe ein Problem. Ich habe mit einem neuen Tool angefangen.
    Ich habe 2 TextBoxen und einen Send Button eingefügt.
    Mein Problem ist nun : Ich weiss nicht wie ich das machen kann , dass wenn jemand die TextBoxen ausfüllt & dann auf Send klickt ich eine Email bekomme mit deren Inhalt.
    Ich bedanke mich schon im Vorraus.
    Liebe Grüsse Synchronic :D
    Du willst keine E-Mails empfangen sondern Senden.

    Das geht zum einen über SMTP, dafür findest du entweder hier oder bei Google hinreichende Tipps und Codes. Bedenke jedoch wenn du SMTP Nutzt muss dies immer von einem gültigen E-Mail Konto passieren, dessen Daten du im Programm hinterlegen musst. Nachteil an VB, diese Daten kann man auslesen und jeder könnte sich so in dein E-Mail Konto einhacken.

    Dodo schrieb:

    Du willst keine E-Mails empfangen sondern Senden.

    Das geht zum einen über SMTP, dafür findest du entweder hier oder bei Google hinreichende Tipps und Codes. Bedenke jedoch wenn du SMTP Nutzt muss dies immer von einem gültigen E-Mail Konto passieren, dessen Daten du im Programm hinterlegen musst. Nachteil an VB, diese Daten kann man auslesen und jeder könnte sich so in dein E-Mail Konto einhacken.
    GOOGLE ist mein Meister :)

    Smtp-Server

    Um eine E-Mail zu senden brauchst du eine gültige E-Mail Addresse. Dann kannst du über einen Smtp-Server eine E-Mail senden.

    Hier ein kleines Beispiel:

    VB.NET-Quellcode

    1. Imports System.Net.Mail
    2. Public Class MailSender
    3. Private Sub SendeMail(ByVal Empfaenger As String, ByVal Betreff As String, ByVal Text As String)
    4. Dim email As New MailMessage
    5. email.From = New MailAddress("Absender E-Mail Addresse", "Absender Name")
    6. email.To.Add(Empfaenger)
    7. email.Subject = Betreff
    8. email.Body = Text
    9. Dim smtpsenden As New SmtpClient("Smtp-Server")
    10. smtpsenden.Port = 25
    11. smtpsenden.EnableSsl = True
    12. smtpsenden.Credentials = New System.Net.NetworkCredential("Benutzername deines E-Mail Kontos", "Das Passwort deines E-Mail Kontos")
    13. smtpsenden.Send(email)
    14. End Sub
    15. Private Sub Button_Senden_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_Senden.Click
    16. SendeMail(Textbox_Empfänger.Text, Textbox_Betreff.Text, Textbox_Text.Text)
    17. MsgBox("E-Mail erfolgreich gesendet!")
    18. End Sub
    19. End Class


    Aber wie schon gesagt sollte man seine E-Mail Konto Zugangsdaten besser nicht in Programm speichern.
    Speicher die Zugangsdaten besser extern.

    Eine Liste mit Smtp-Server findest du übrigens hier: patshaping.de/hilfen_ta/pop3_smtp.htm
    Eine häufig verwendete Funktion für Mailversand ohne SMTP-Daten ist "MailTo".
    Dabei wird einfach der Standard-Mail-Client des Benutzers verwendet, der ja bereits über entsprechende Zugangsdaten zu einem Mailserver verfügt.

    VB.NET-Quellcode

    1. Process.Start("mailto:you@yourdomain.de?subject=Betreff&body=Text")


    Vor- und Nachteil:
    Der Benutzer kann selbst entscheiden, ob er die Mail versenden will oder nicht.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Hey @petaod:;

    ich sehe bei dieser Methode noch den Nachteil, dass ein (lokaler) Client vorhanden sein muss. Allerdings gibt es durchaus Nutzer, die einen Webclient wie GMX, Web.de oder auch Google verwenden. Die Methode würde in diesem Fall wohl nicht funktionieren.

    Gruß Manschula
    Wenn du das Programm anderen zur Verfügung stellen willst, solltest wirklich nicht keine Mail Logindaten darin angeben. Beschäftige dich mit PHP, hol dir (meinetwegen Kostenlos) nen Webserver, schau dir paar Tutorials an wie man in PHP Mails verschickt und rufe mit VB das PHP Script auf (über WebClient oder HttpWebRequst). Übermittle den Text und alles was sonst noch so in die Mail soll.

    Ebenfalls würde ich dir raten noch ein mechanismus einzubauen, das IPs ne gewisse Zeit gesperrt werden, damit niemand dich zuflooden kann mit Mails, wenn man das Script ganz oft aufruft usw.