id? Quelle GlobalAppointmentID
ou EntryID
? Dans le cas EntryID
, vous pouvez utiliser Namespace.GetItemFromID
, mais comme le rendez-vous est recréé par Outlook lorsqu'il traite les mises à jour de réunion, son ID d'entrée est modifié et GetItemFromID
échoue.
GlobalAppointmentID
est le chemin à parcourir (c'est ce que Outlook lui-même utilise lors du traitement des mises à jour/annulations), mais malheureusement le modèle objet Outlook ne vous permettra pas de rechercher les propriétés binaires (PT_BINARY). à travers tous les éléments dans le dossier Calendrier. Vous auriez besoin d'utiliser MAPI étendu (C++ ou Delphi) ou Redemption (n'importe quelle langue) - (RDOtems .Find/FindNext/Restrict` dans Redemption permet de rechercher des propriétés binaires).
Redemption.RDOSession session = new Redemption.RDOSession();
session.MAPIOBJECT = outlookApp.Session.MAPIOBJECT; //share the Outlook session
RDOFolder calendarFolder = session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar);
Redemption.RDOAppointmentItem appointmentItem = calendarFolder.Items.Find("GlobalAppointmentID = '"+TheGlobalAppointmentId+ "'");