2009-11-20 9 views
2

Je crée un programme pour générer automatiquement des rapports à partir des pièces jointes entrantes et il est presque complet sauf pour un domaine. Les e-mails entrants sont automatiquement filtrés dans des dossiers qui différencient le client et le serveur dont ils proviennent. Je ne peux pas comprendre comment obtenir le chemin du dossier de l'article d'email.Récupérer un dossier de courrier électronique à partir de MailItem via l'interface MAPI

J'utilise l'événement NewMailEx pour appeler la méthode ci-dessous et this.AppNamespace et this.ReportFolder sont confirmés pour être correctement instanciés.

void AppClass_NewMailEx(string EntryIDCollection) 
{ 
    Outlook.MailItem Item = (Outlook.MailItem)this.AppNamespace.GetItemFromID(EntryIDCollection, this.ReportFolder.StoreID); 
    string FolderName = ""; //How do I get this? 
} 

Le MSDN sur MailItem est here. Suis-je en train de manquer quelque chose ou d'approcher cela de manière incorrecte?

Répondre

5

Je pense qu'il y a un parent que vous pouvez vérifier - il devrait retourner un MAPIFolder que vous pouvez vérifier le nom de.

+0

Il existe une propriété 'Parent' mais la documentation est pratiquement inexistante sur ce qu'elle retourne réellement. Je vais essayer ici bientôt. –

+0

Je suppose qu'il renvoie un 'objet' parce que le contexte du parent de l'article de courrier peut ne pas être un dossier. Par exemple, un clic droit sur un IPM.Note dans votre boîte de réception devrait renvoyer un 'dossier 'en tant que parent, cependant si vous êtes dans la vue composer, le parent pourrait être l'inspecteur ou null (ne l'avez pas essayé). –

Questions connexes