Digital Data - Marlon Schreiber d9ddc61f10 MS
2017-11-01 13:54:33 +01:00

95 lines
5.2 KiB
VB.net

Imports System.Net.Mail
Public Class ClassEmail
Public Sub Send_Error_Mail(ByVal vBody As String)
'#### E-MAIL NACHRICHT VERSENDEN
Try
Dim empfaenger As String()
If My.Settings.Email_Empfaenger <> "" Then
If My.Settings.Email_Empfaenger.Contains(";") Then
empfaenger = My.Settings.Email_Empfaenger.Split(";")
Else
ReDim Preserve empfaenger(0)
empfaenger(0) = My.Settings.Email_Empfaenger
End If
'Für jeden Empfänger eine Neue Mail erzeugen
For Each _mailempfaenger As String In empfaenger
' Neue Nachricht erzeugen:
Dim message As New MailMessage(My.Settings.Email_From, _mailempfaenger, My.Settings.Email_Betreff & " Domain: " & Environment.UserDomainName, _
"<font face=""Arial"">" & My.Settings.Email_Body & vBody & "<br>>> Maschine: " & Environment.MachineName & "<br>" & "<br>>> Domain-Name: " & Environment.UserDomainName & "<br>" & _
"<br>>> Gesendet am: " & My.Computer.Clock.LocalTime.ToShortDateString & "-" & _
My.Computer.Clock.LocalTime.ToLongTimeString & "</font>")
' create and add the attachment(s) */
'Dim logfile As String = ClassLogger.DateiSpeicherort & "\" & ClassLogger.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & ".txt"
'If logfile.Contains("\\") Then
' logfile = logfile.Replace("\\", "\")
'End If
'Dim Attachment As Attachment = New Attachment(logfile)
'message.Attachments.Add(Attachment)
With message
.IsBodyHtml = True
End With
'Einen SMTP Client erzeugen und Anmeldungsinformationen hinterlegen
Dim emailClient As New SmtpClient(My.Settings.Email_SMTP)
'Email mit Authentifizierung
Dim SMTPUserInfo As New System.Net.NetworkCredential(My.Settings.Email_User, My.Settings.Email_PW) ', My.Settings.vDomain)
emailClient.UseDefaultCredentials = False
emailClient.Credentials = SMTPUserInfo
emailClient.Port = 25
'*Send the message */
emailClient.Send(message)
ClassLogger.Add("==> Fehler Email erfolgreich an " & _mailempfaenger & " versendet!", False)
ClassLogger.Add("==> Text: " & vBody, False)
Next
End If
Catch ex As Exception
ClassLogger.Add("### Fehler im Mailversand: " & ex.Message)
End Try
End Sub
Public Shared Function Send_Reminder_Mail(ByVal vBody As String, ByVal emailfrom As String, ByVal emailsmtp As String, ByVal emailuser As String, ByVal emailpw As String, ByVal email_empf As String, ByVal ReminderHeader As String, ByVal ReminderFooter As String)
'#### E-MAIL NACHRICHT VERSENDEN
Try
Dim empfaenger As String()
If email_empf.Contains(";") Then
empfaenger = email_empf.Split(";")
Else
ReDim Preserve empfaenger(0)
empfaenger(0) = email_empf
End If
'Für jeden Empfänger eine Neue Mail erzeugen
For Each _mailempfaenger As String In empfaenger
' Neue Nachricht erzeugen:
Dim message As New MailMessage(My.Settings.Email_From, _mailempfaenger, My.Settings.Email_ReminderBetreff, _
"<font face=""Arial"">" & ReminderHeader & vBody & ReminderFooter & "<p>" & _
"Starten Sie den Process-Manager " & "<a href=" & My.Settings.Email_ReminderStartup & ">hier</a><br>" & _
"<p>>> Gesendet am: " & My.Computer.Clock.LocalTime.ToShortDateString & "-" & _
My.Computer.Clock.LocalTime.ToLongTimeString & "</font>")
With message
.IsBodyHtml = True
End With
'Einen SMTP Client erzeugen und Anmeldungsinformationen hinterlegen
Dim emailClient As New SmtpClient(emailsmtp)
'Email mit Authentifizierung
Dim SMTPUserInfo As New System.Net.NetworkCredential(emailuser, emailpw) ', My.Settings.vDomain)
emailClient.UseDefaultCredentials = False
emailClient.Credentials = SMTPUserInfo
emailClient.Port = 25
'*Send the message */
emailClient.Send(message)
ClassLogger.Add("==> Reminder Email erfolgreich an " & _mailempfaenger & " versendet!", False)
Next
Return True
Catch ex As Exception
ClassLogger.Add("### Fehler im Reminder-Mailversand: " & ex.Message)
Return False
End Try
End Function
End Class