Visual Basic 2011 Excel VBA eMail Account programmieren SelMckenzie Selzer-McKenzie
Author D.Selzer-McKenzie
Heute zeige ich Ihnen, wie Si emit Visual Basic oder mit Excel einen eigenen funktionieenden eMail Account programmieren und damit eMails mit Anhängen usw. Auch an Kopie-Empfänger versenden können.
Natürlich kann das auch in eine bestehende Applikation eingebaut werden und funktioniert reibungslos.
Welche Steuerelemente Sie brauchen, sehen Sie auf dem Video und auch den Code. Hier sollten Sie das Video anhalten, um den relativ kleinen Code abschreiben zu können.
Das wars dann.
Selzer-McKenzie
Der Code lautet:
Imports System.Configuration
Public Class Form1
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
BoxAnhang.ValueMember = "FullName"
BoxAnhang.DisplayMember = "Name"
BoxAnhang.DataSource = New ArrayList
End Sub
Private Sub KnopfSenden_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KnopfSenden.Click
Try
Dim eMail As New Mail
Dim mailFrom As String = ConfigurationManager.AppSettings("mailFrom")
Dim smtpHost As String = ConfigurationManager.AppSettings("smptHost")
Dim smtpUser As String = ConfigurationManager.AppSettings("smtpUser")
Dim smtpPass As String = ConfigurationManager.AppSettings("smtpPass")
Dim smtpPort As String = ConfigurationManager.AppSettings("smtpPort")
BoxMailEingabe.Text = BoxMailEingabe.Text.Replace(",", ";")
BoxKopieSendenAn.Text = BoxKopieSendenAn.Text.Replace(",", ";")
BoxZweiteKopieSendenAn.Text = BoxZweiteKopieSendenAn.Text.Replace(",", ";")
Dim mailTo() As String = BoxMailEingabe.Text.Split(";")
Dim mailCC() As String = BoxKopieSendenAn.Text.Split(";")
Dim mailbCC() As String = BoxZweiteKopieSendenAn.Text.Split(";")
Dim strSubject As String = BoxBetreff.Text
Dim strBody As String = BoxDerText.Text
Dim sAttachments() As String
ReDim sAttachments(BoxAnhang.Items.Count - 1)
Dim mArr As ArrayList = BoxAnhang.DataSource
For i As Integer = 0 To sAttachments.GetUpperBound(0)
sAttachments(i) = CType(mArr(i), IO.FileInfo).FullName
Next
eMail.Send(mailFrom, smtpHost, smtpUser, smtpPass, smtpPort, mailTo, _
mailCC, mailbCC, strSubject, strBody, sAttachments)
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
End Sub
Private Sub BoxAnhang_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles BoxAnhang.DragEnter
e.Effect = DragDropEffects.All
End Sub
Private Sub BoxAnhang_DragDrop(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles BoxAnhang.DragDrop
Dim path() As String = e.Data.GetData(DataFormats.FileDrop, False)
Dim mArr As ArrayList = BoxAnhang.DataSource
For i As Integer = 0 To path.Length - 1
Dim bFileExists As Boolean = False
'prüfen ob datei schon angefügt
For j As Integer = 0 To mArr.Count - 1
Dim existingFile As IO.FileInfo = mArr(i)
If existingFile.FullName = path(i) Then
bFileExists = True
End If
Next
If Not bFileExists Then
mArr.Add(New IO.FileInfo(path(i)))
End If
Next
BoxAnhang.DataSource = Nothing
BoxAnhang.ValueMember = "FullName"
BoxAnhang.DisplayMember = "Name"
BoxAnhang.DataSource = mArr
End Sub
End Class
Keine Kommentare:
Kommentar veröffentlichen
Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.