Mail mit Anhang versenden

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    versuchs mal so

    VB.NET-Quellcode

    1. Dim Msg As New MailMessage
    2. Dim myCredentials As New System.Net.NetworkCredential
    3. myCredentials.UserName = " andreas@absender.de"
    4. myCredentials.Password = "Passwort des Absenders"
    5. Msg.IsBodyHtml = False
    6. Dim mySmtpsvr As New SmtpClient()
    7. mySmtpsvr.Host = "smtp.web.de" ?bei web.de
    8. mySmtpsvr.Port = 25
    9. mySmtpsvr.UseDefaultCredentials = False
    10. mySmtpsvr.Credentials = myCredentials
    11. Try
    12. Msg.From = New MailAddress("andreas@absender.de")
    13. Msg.To.Add("entchen@empfänger.de")
    14. Msg.Subject = "Betreff"
    15. Msg.Body = "Inhalt"
    16. Msg.Attachments.Add(("pfad"))
    17. mySmtpsvr.Send(Msg)
    18. MsgBox("E-Mail gesendet.", MsgBoxStyle.Information, Title:="Information")
    19. Catch ex As Exception
    20. MsgBox(Err.Number & ex.Message & ex.StackTrace.ToString) 'Falls ein Fehler auftritt wird eine MsgBox angezeigt
    21. End Try
    22. End Sub


    versuch du mal selber ncoh dran rum
    Moin !

    ich hatte mir dieses Beispiel auch schon einmal zu nutze gemacht und wollte jetzt noch die Variante um den Dateianhang ergänzen.

    Dazu habe ich folgendes erweitert - siehe Parameter AttachmentPfad für den Dateipfad:

    VB.NET-Quellcode

    1. Public Function SendMail(ByVal mailto As String, ByVal subject As String, ByVal body As String, Optional Log As EBL.Tools.Logger = Nothing, Optional AttachmentPfad As String = "") As Boolean
    2. ...
    3. If AttachmentPfad.Length > 0 Then
    4. If System.IO.File.Exists(AttachmentPfad) = True Then
    5. Msg.Attachments.Add(AttachmentPfad)
    6. End If
    7. End If



    Es wird aber die Zeile mit dem ADD angemerkt, weil ein String nicht entsprechend konvertiert werden kann!

    Aber auch mit den doppelten runden Klammern, wie im Posting angegeben, klappt es nicht.

    Kann mir einer weiterhelfen?

    Gruß Jan