IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
logo
Sommaire > Office > Outlook
        Comment intercepter l'arrivée d'un mail ?
        Comment lister les mails présents dans le répertoire 'Inbox' d'Outlook ?
        Comment lister les contacts présents dans le répertoire 'Contacts' d'Outlook ?



Comment intercepter l'arrivée d'un mail ?
auteur : notalp
Gestion de l'évènement d'arrivée d'un mail dans le répertoire Inbox de Outlook

          
		//Import des bibliotheques
		using Outlook = Microsoft.Office.Interop.Outlook;
		using Redemption;
	
		//Voir question precedente 
		Outlook.Application m_ObjOutlookApp = new Outlook.ApplicationClass();
		Outlook.NameSpace n = m_ObjOutlookApp.GetNamespace("mapi");
		Redemption.RDOFolder f;
		Redemption.RDOSessionClass rdoSession = new Redemption.RDOSessionClass();
		rdoSession.MAPIOBJECT = n.MAPIOBJECT;
		f = rdoSession.GetDefaultFolder(rdoDefaultFolders.olFolderInbox);

		// Gestion de l'evenement OnNewMail
		rdoSession.OnNewMail +=new IRDOSessionEvents_OnNewMailEventHandler(rdoSession_OnNewMail);
		
		
		//Methode de recuperation de l'evenement d'arrivée du nouveau mail
		private void rdoSession_OnNewMail(string EntryID)
		{
			//A coder 
		}
		
        

Comment lister les mails présents dans le répertoire "Inbox" d'Outlook ?
auteur : notalp
Pour ce faire, nous utiliserons Outlook et la Dll de Outlook Redemption. Cette dernière permet d'enlever la confirmation d'autorisation par un code externe à Outlook. Ce code permet de recupérer uniquement les mails présents dans le répertoire Inbox. L'ajout des réferences "Microsoft Excel 11.0 Object Library" ainsi que celle de "Outlook Redemption" sont nécessaire.

          
		//Import des bibliotheques
		using Outlook = Microsoft.Office.Interop.Outlook;
		using Redemption;
	
		//Creer une instance d'Application Outlook
		Outlook.Application m_ObjOutlookApp = new Outlook.ApplicationClass();
		// Recuperer le NameSpace
		Outlook.NameSpace n = m_ObjOutlookApp.GetNamespace("mapi");
		//Recuperer le Repertoire Rdo (Redemption)
		Redemption.RDOFolder f;
		
		Redemption.RDOSessionClass rdoSession = new Redemption.RDOSessionClass();
		rdoSession.MAPIOBJECT = n.MAPIOBJECT;
		
		//Recuperation du repertoire Inbox (rdoDefaultFolders est un enum, d'autres repertoires sont disponibles)
		f = rdoSession.GetDefaultFolder(rdoDefaultFolders.olFolderInbox);
		
		foreach (Object Item in f.Items)
		{
			//Creation d'un item RDOMailClass
			RDOMailClass rdom = ((RDOMailClass)Item);
			//rdom est un mail a proprement parler. Les proprietes accessibles sont par exemple : SenderEmailAddress,Body,Subject ...
		}
      
        

Comment lister les contacts présents dans le répertoire "Contacts" d'Outlook ?
auteur : notalp
Pour ce faire, nous utiliserons Outlook. Ce code permet de recuperer uniquement les contacts presents dans le repertoire Contacts. L'ajout de la reference "Microsoft Excel 11.0 Object Library" est necessaire.

          
		//Import des bibliotheques
		using Outlook = Microsoft.Office.Interop.Outlook;
	
		//Creer une instance d'Application Outlook
		Outlook.Application m_ObjOutlookApp = new Outlook.ApplicationClass();
		// Recuperer le NameSpace
		Outlook.NameSpace n = m_ObjOutlookApp.GetNamespace("mapi");
		//Recuperer le Repertoire Contact
		Outlook.MAPIFolder f = n.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderContacts);
		foreach (Object Item in f.Items)
		{
			if(Item is Outlook.ContactItem)
			{
				Outlook.ContactItem ct =  ((Outlook.ContactItem)Item);
				/*On récupère ct objet de type ContactItem... voir la liste des propriétés */
			}
		}
		
        


Consultez les autres F.A.Q's


Valid XHTML 1.0 TransitionalValid CSS!

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2010 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.