Kontaktformular - Anpassung

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von nifu777.

    Kontaktformular - Anpassung

    Hallo zusammen,

    ich sitze gerade an einem kleinen Tool, welches u.a. auch eine Form mit einem Kontaktformular beinhalten soll. Nach dem durchforsten von einigen Threads bin ich auf nachfolgendem Code gestoßen (Form dazu befindet sich im Anhang).
    Der Code funktioniert (Visual Basic Express 2010) in dieser Art und Weise ohne Probleme.

    (Beispiel GMX) - Ich gebe unter E-Mail meine Adresse xy@gmx.de und mein Passwort ein, fülle die restlichen Angaben aus und sende das Ganze ab. Die E-Mail wird abgesendet und ich erhalte eine E-Mail von xy@gmx.de mit gewählten Betreff.

    Nun hätte ich es jedoch gerne so, dass man sich nicht mit einer GMX Adresse zB. authentifizieren muss, sondern dass feste STMP Daten im Hintergrund hinterlegt sind, sodass E-Mails abgeschickt werden sollen (als Beispiel die Daten von xy@gmx.de).

    Es soll als Absender-Adresse jedoch nicht xy@gmx.de im Posteingang erscheinen sondern eine frei definierbare Adresse im Formular (z.B. Max_Mustermann@t-online.de). Wenn ich dann auf die eingegangene E-Mail im Posteingang antworte, würde Max Mustermann eine Antwort erhalten und nicht xy@gmx.de

    Ich habe schon folgende Zeile einmal umgeschrieben:

    smtp.Credentials = New System.Net.NetworkCredential("xy@gmx.de", "Passwort1234")

    Wenn ich nun bei Absender "hallo@test.de" reinschreibe, erscheint ein Fehler - Wenn ich dort wieder xy@gmx.de eintrage klappt es ohne Probleme (jedoch natürlich nicht mit dem gewünschten Absender)

    Ich hoffe ich konnte das Problem einigermaßen erklären - kann mir diesbezüglich jemand behilflich sein? - Danke schon mal im Voraus! :)

    Quellcode

    1. Imports System.Net.Mail
    2. Public Class Form5
    3. Private Sub Button_Absenden_Click(sender As System.Object, e As System.EventArgs) Handles Button_Absenden.Click
    4. Dim MyEmail As New MailMessage
    5. Try
    6. MyEmail.From = New MailAddress(Textbox_Absender.Text)
    7. MyEmail.To.Add(zuwem.Text)
    8. MyEmail.Subject = (Textbox_Betreff.Text)
    9. MyEmail.Body = "Anliegen: " & vbCrLf & (RichTextBox1.Text) & vbCrLf & vbCrLf
    10. MyEmail.Body += "Anrede: " & ComboBox1.Text & vbCrLf
    11. MyEmail.Body += "Vorname: " & TextBox_Vorname.Text & vbCrLf
    12. MyEmail.Body += "Nachname: " & TextBox_Nachname.Text & vbCrLf
    13. MyEmail.Body += "Ort: " & TextBox_Gebäude.Text & vbCrLf
    14. MyEmail.Body += "Etage: " & TextBox_Etage.Text & vbCrLf
    15. MyEmail.Body += "Raum: " & TextBox_Raum.Text & vbCrLf
    16. MyEmail.Body += "Telefon: " & TextBox_Telefon.Text & vbCrLf
    17. Dim smtp As New SmtpClient("smtp.gmx.de")
    18. smtp.Port = 587
    19. smtp.EnableSsl = True
    20. smtp.Credentials = New System.Net.NetworkCredential(Textbox_Absender.Text, passwort.Text)
    21. smtp.Send(MyEmail)
    22. MsgBox("E-Mail wurde erfolgreich abgeschickt!")
    23. Catch ex As Exception
    24. MsgBox("Fehler aufgetreten!")
    25. End Try
    26. End Sub
    27. End Class
    Bilder
    • kontaktformular.png

      10,38 kB, 863×494, 111 mal angesehen
    Ich kann mich zwar nur mit Spekulationen äußern, aber soweit ich den Code verstehe, bedeutet smtp.Credentials die Anmeldeinformation, also Benutzername und Passwort bei Deinem Mailanbieter. Dass Du da nicht HinzUndKunzVonNotzel@sternchenmail.com eintippen kannst, ist für mich naheliegend, schließlich muss Dein Provider ja prüfen können, ob man einen Mailaccount bei ihm hat. Also müssten dort Deine festen Anmeldedaten rein ("xy@gmx.de", "Passwort1234").
    Und wenn Du so dann ne eMail abgeschickt hast, soll nicht Dein Benutzername dranstehen, sondern irgendeine freidefinierbare eMail-Adresse? Sowas hab ich bisher schon häufig im Spamordner bei mir gesehen. Das klingt wie ein böses Kunden-und-Kollegen-gegeneinander-aufhetzen-Tool: "Herr Müller, was erlauben Sie sich, mir per eMail zu schicken?" "Aber ich hab doch gar nix geschrieben." "In meinem Posteingang ist eine Mail mit Ihnen als Absender!"
    Ich hoffe daher, dass ich Deinen Anfangspost falsch verstanden habe.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @VaporiZed
    Ruhig Brauner ;) Das kann man mit direkt in Outlook machen. Da braucht man kein Programm für schreiben ;)
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    Ich glaube ich hatte im allgemeinen einen Denkfehler.

    Dachte dass man über ein Kontaktformular im Internet auch die eigene E-Mail Adresse angezeigt bekommt. Aber da erhält man als Empfänger ja auch im Posteingang die Anfrage über eine Adresse ala "kontaktformular@webseite.de"...

    Ps: Man muss nicht immer vom Schlimmsten ausgehen, dass irgendwer irgendwelche Spam-Mails etc. rausschicken will