Teil 6: E-Mail-Client selbstgebaut
- E-Mail-Client selbstgebaut
- Teil 2: E-Mail-Client selbstgebaut
- Teil 3: E-Mail-Client selbstgebaut
- Teil 4: E-Mail-Client selbstgebaut
- Teil 5: E-Mail-Client selbstgebaut
- Teil 6: E-Mail-Client selbstgebaut
- Teil 7: E-Mail-Client selbstgebaut
- Teil 8: E-Mail-Client selbstgebaut
- Teil 9: E-Mail-Client selbstgebaut
Mit einer neuen Schaltfläche namens btnSenden legen Sie die Funktionen zum Postversand fest. In der Code-Ansicht übernehmen Sie die String-Variablen Absender, Empfänger, Betreff und Inhalt mit deren Einträge aus den Textfeldern. Weil leere Eingabefelder das Programm abstürzen ließen, fangen Sie diese ab oder ergänzen sie durch sinnvolle Einträge. Weil es trotz dieser Vorgaben zu Fehlern kommen kann, behandeln Sie Fehler per try-Befehl. Damit fangen Sie Fehler in einem Codeblock ab, während dieser Code noch ausgeführt wird. Am Ende des Befehlsblocks setzen Sie Chatch ein. So folgt im Fehlerfall ein Hinweis, wenn eine Mail nicht verschickt wird:

© Archiv
?Fehlerfall
try
?
Catch ex As Exception
MsgBox(Die Nachricht wurde nicht
gesendet & vbCrLf & ex.Message)
End Try
Die E-Mail selbst betten Sie in einem Using- Block ein. Dieser gibt die Mailressourcen frei, wenn der Code den Block beendet. Die Mailfunktion arbeitet per MailMessage Member. Mit einer neuen Instanz dieser Klasse stellen Sie die Mail-Parameter ein:
Using EmailMsg As New
Net.Mail.MailMessage(Absender,
Empfänger, Betreff, Inhalt)
Wenn Sie einen Anhang anfügen wollen, muss dieser existieren. Nach dieser Prüfung lässt sich eine Datei anhängen:
?Anhang hinzufügen
Dim Datei As String
Datei = Me.txtAnhang.Text
If Datei > ?? Then Dim Anhangdatei
As New Net.Mail.Attachment(Datei)
EmailMsg.Attachments.Add(Anhangdatei)
End If
Der SmtpClient versendet die E-Mail. Die DeliveryMethod bestimmt, wie ausgehende EMails behandelt werden. Sie können folgende Übermittlungsmethoden einsetzen:

© Archiv
- Bei einem auf dem System laufenden IIS (Internet Information Server) verschieben Sie die Mail in das Pickup-Verzeichnis für IIS. Anschließend übermittelt der IIS die Nachricht.
- Bei einem SMTP-Server verschieben Sie die Mail in ein von PickupDirectoryLocation angegebenes Verzeichnis für die spätere Übermittlung durch eine andere Anwendung.
Aus dieser Freiheit zeigt ein Beispiel den Versand für den IIS:
Dim EMAIL As New Net.Mail.SmtpClient
?Host hier lokaler PC
EMAIL.Host =?127.0.0.1?
?SMTP-Server hier IIS
EMAIL.DeliveryMethod =
Net.Mail.SmtpDeliveryMethod.PickupDirec
toryFromIis
?E-MAil senden
EMAIL.Send(EmailMsg)
Mit wenigen Befehlen ist Ihr Mailclient einsatzbereit. Zum Test legen Sie noch einen Button zum Schließen auf das Formular. Hierüber öffnen Sie das Start-Formular (MAILSTART. Show()) und schließen dann das aktuelle Formular (Me.Hide()).
Im Startformular belegen Sie jetzt die Schaltfläche Neue E-Mail erstellen mit dem Code MAIL.Show() und Me.Hide(). Schon können Sie testen!