Gewusst wie: Programmgesteuertes Senden von E-Mails
In diesem Beispiel wird eine E-Mail-Nachricht an alle Kontakte versendet, deren E-Mail-Adresse den Domänennamen example.com enthält.
Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Anwendungsebene für Outlook 2013 und Outlook 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.
Beispiel
Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Startup
SendEmailtoContacts()
End Sub
Private Sub SendEmailtoContacts()
Dim subjectEmail As String = "Meeting has been rescheduled."
Dim bodyEmail As String = "Meeting is one hour later."
Dim sentContacts As Outlook.MAPIFolder = Me.Application.ActiveExplorer() _
.Session.GetDefaultFolder(Outlook _
.OlDefaultFolders.olFolderContacts)
For Each contact As Outlook.ContactItem In sentContacts.Items()
If contact.Email1Address.Contains("example.com") Then
CreateEmailItem(subjectEmail, contact _
.Email1Address, bodyEmail)
End If
Next
End Sub
Private Sub CreateEmailItem(ByVal subjectEmail As String, _
ByVal toEmail As String, ByVal bodyEmail As String)
Dim eMail As Outlook.MailItem = Me.Application.CreateItem _
(Outlook.OlItemType.olMailItem)
With eMail
.Subject = subjectEmail
.To = toEmail
.Body = bodyEmail
.Importance = Outlook.OlImportance.olImportanceLow
.Send()
End With
End Sub
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
SendEmailtoContacts();
}
private void SendEmailtoContacts()
{
string subjectEmail = "Meeting has been rescheduled.";
string bodyEmail = "Meeting is one hour later.";
Outlook.MAPIFolder sentContacts = (Outlook.MAPIFolder)
this.Application.ActiveExplorer().Session.GetDefaultFolder
(Outlook.OlDefaultFolders.olFolderContacts);
foreach (Outlook.ContactItem contact in sentContacts.Items)
{
if (contact.Email1Address.Contains("example.com"))
{
this.CreateEmailItem(subjectEmail, contact
.Email1Address, bodyEmail);
}
}
}
private void CreateEmailItem(string subjectEmail,
string toEmail, string bodyEmail)
{
Outlook.MailItem eMail = (Outlook.MailItem)
this.Application.CreateItem(Outlook.OlItemType.olMailItem);
eMail.Subject = subjectEmail;
eMail.To = toEmail;
eMail.Body = bodyEmail;
eMail.Importance = Outlook.OlImportance.olImportanceLow;
((Outlook._MailItem)eMail).Send();
}
Kompilieren des Codes
Dieses Beispiel setzt Folgendes voraus:
- Kontakte, deren E-Mail-Adresse den Domänennamen example.com enthält.
Robuste Programmierung
Entfernen Sie keinesfalls den Filtercode, der nach dem Domänennamen example.com sucht.Ohne den Filter wird die E-Mail-Nachricht an alle Kontakte gesendet.
Siehe auch
Aufgaben
Gewusst wie: Programmgesteuertes Erstellen von E-Mail-Elementen
Gewusst wie: Programmgesteuertes Zugreifen auf Outlook-Kontakte
Gewusst wie: Programmgesteuertes Ausführen von Aktionen beim Empfang einer E-Mail-Nachricht