VB.Net beste möglichkeit E-Mail versenden

S

Silverado

Mein Programm verschickt zurzeit nachrichten (Net Send) ich möchte jetzt das, dass Programm auch noch E-Mails verschickt welche ist die beste Möglichkeit so was einzurichten.
 
S

Silverado

Etwas zu viel Code da gefehlt mir mein dieser Code besser. Muss man nicht soviel schreiben.

Beschreibung
Das nachfolgende Beispiel zeigt, welche Schritte notwendig sind, um direkt aus einer VB.NET Anwendung heraus eine EMail-Nachricht über einen SMTP-Server zu versenden.

Der Mailversandt selbst erfolgt über die die Web.Mail-Klasse. Diese muss jedoch zunächst über das Menü Projekt - Verweis hinzufügen - .NET "aktiviert" werden. Doppelklicken Sie hierzu im "Verweis einfügen"-Dialog auf den Eintrag System.Web.Mail und klicken anschließend auf OK.

Ziehen Sie nun einen Command-Button auf die Form (Button1) und fügen nachfolgenden Code in die Form ein:
Code:
' Wichtig! GLEICH zu BEGINN einfügen, 
' also noch VOR Public Class ... 
Imports System.Web.Mail

Public Class Form1
  Inherits System.Windows.Forms.Form

  Private Sub Button1_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button1.Click

    Dim oMail As New MailMessage()

    ' SMTP-Server (z.B. T-Online)
    SmtpMail.SmtpServer = "mailto.btx.dtag.de"

    With oMail
      ' Absender
      .From = "Ihre EMail-Adresse"

      ' Empfänger
      .To = "Empfänger EMail-Adresse"

      ' Betreff
      .Subject = "Test-Nachricht"

      ' Nachricht
      .Body = "Dies ist eine Test-Nachricht"

      ' Anlagen?
      ' .Attachments.Add(New MailAttachment("Dateiname"))
    End With

    Try
      SmtpMail.Send(oMail)
      MsgBox("Nachricht wurde versandt.")

    Catch oEx As Exception
      MsgBox("Fehler: " & oEx.Message.ToString)

    End Try
  End Sub
End Class
 

Aarisch

Gesperrt
:rolleyes: Ähm, gibts da auch ne variante für VB6???

kann ich mit VB6 auch kontrollieren, wieviel neue eMail ich nur auf dem Server habe?
 

René Paschold

Erfahrenes Mitglied
Mit Sicherheit wird es für VB6 auch diveres Controls geben mit dennen du das machen kannst. Rein mit VB6 allerdings geht es leider nicht!

Nochmal kurz zum Emailversand unter .NET:

System.Web.Mail ist hier angesagt. Leider ist die MailMessage Klasse nicht sooo gut bestückt. Auch das versenden über die SmtpMail Klasse ist spärlich. Es gibt keine Möglichkeit Auth. vorzunehmen.

Wenn du also richtig "professionell" Emails versenden möchstes dann bleibt nur die Möglichkeit eine Componente zu kaufen oder dir selbst was zu schreiben.