Aracılığıyla paylaş


Nasıl Yapılır: Program Aracılığıyla E-Posta Gönderme

Bu örnekte, e-posta adresinde etki alanı adı example.com olan kişilere bir e-posta iletisi gönderilir.

Uygulama alanı: Bu konudaki bilgiler Outlook 2007 ve Outlook 2010 uygulamalarının uygulama düzeyi projelerine yöneliktir. Daha fazla bilgi için bkz. Office Uygulamalarında Kullanılabilir Özellikler ve Proje Türü.

Örnek

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();
}

Kodu Derleme

Bu örnek aşağıdakileri gerektirir:

  • E-posta adresinde etki alanı adı example.com olan kişiler.

Güçlü Programlama

example.com etki alanını arayan filtreleme kodunu kaldırmayın. Eğer filtreyi kaldırırsanız çözümünüz kişilerinizin hepsine e-posta iletileri gönderir.

Ayrıca bkz.

Görevler

Nasıl Yapılır: E-posta öğesi oluşturma

Nasıl Yapılır: Access Outlook Kişiler

Nasıl Yapılır: E-Posta İletisi Alındığında Eylemleri Gerçekleştirme

Kavramlar

Posta öğelerle çalışma