Comment : exécuter des actions lors de la réception d'un message électronique
Mise à jour : novembre 2007
S'applique à |
---|
Les informations dans cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés. Type de projet
Version de Microsoft Office
Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet. |
Cet exemple utilise l'événement Microsoft.Office.Tools.Outlook.Application.NewMail pour effectuer des actions personnalisées lorsque l'utilisateur reçoit un courrier électronique.
Exemple
Private Sub ThisAddIn_NewMail() Handles Application.NewMail
Dim filter As String = "USED CARS"
Dim outlookNameSpace As Outlook.NameSpace = Me.Application.GetNamespace("MAPI")
Dim inbox As Outlook.MAPIFolder = _
outlookNameSpace.GetDefaultFolder( _
Outlook.OlDefaultFolders.olFolderInbox)
Dim items As Outlook.Items = inbox.Items
items.Restrict("[Unread] = true")
' If the mail item matches the specified filter,
' move it to the junk e-mail folder.
For Each mail As Outlook.MailItem In items
If mail.MessageClass = "IPM.Note" And _
mail.Subject.ToUpper.Contains(filter.ToUpper) Then
mail.Move(outlookNameSpace.GetDefaultFolder( _
Outlook.OlDefaultFolders.olFolderJunk))
End If
Next
End Sub
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
this.Application.NewMail += new Microsoft.Office.Interop.
Outlook.ApplicationEvents_11_NewMailEventHandler(
ThisApplication_NewMail);
}
void ThisApplication_NewMail()
{
string filter = "USED CARS";
Outlook.NameSpace outlookNameSpace = this.Application.GetNamespace("MAPI");
Outlook.MAPIFolder inbox = outlookNameSpace.GetDefaultFolder(
Microsoft.Office.Interop.Outlook.
OlDefaultFolders.olFolderInbox);
Outlook.Items items = inbox.Items;
items.Restrict("[Unread] = true");
// If the mail item matches the specified filter,
// move it to the junk e-mail folder.
foreach (Outlook.MailItem mail in items)
{
if (mail.MessageClass == "IPM.Note" &&
mail.Subject.ToUpper().Contains(filter.ToUpper()))
{
mail.Move(outlookNameSpace.GetDefaultFolder(
Microsoft.Office.Interop.Outlook.
OlDefaultFolders.olFolderJunk));
}
}
}
Voir aussi
Tâches
Comment : créer des gestionnaires d'événements dans Visual Studio Tools pour Office
Concepts
Utilisation d'éléments de messagerie
Mise en route de la programmation de compléments d'application