Bonjour,

Cela fait des semaines que je recherche des infos pour créer des rendez-vous dans un sous-calendrier d'Outlook (par exemple 'MonCalendrier') que j'ai précédemment créé.

J'ai bien vu un code en VB, des exemples C++/Mfc (http://support.microsoft.com/kb/220600) , et pour accéder au Folder du 1er calendrier (GetDefaultFolder(9)), mais ne vois pas comment accéder par exemple au 3eme calendrier.

En ayant appris que les calendriers suivants le premier, sont des 'sous-calendriers', défini comme 'Item' et non comme 'Folder'

Mon code jusque là :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
CApplication olApp;
   COleException e;
   if(!olApp.CreateDispatch(_T("Outlook.Application"), &e)) {
      CString str;
	  str="CreateDispatch() failed ";
      AfxMessageBox(str, MB_SETFOREGROUND);
      return;
   }
 
// Logon. 
CNameSpace olNs(olApp.GetNamespace(_T("MAPI")));
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
olNs.Logon(covOptional, covOptional, covOptional, covOptional);
 
// Là j'arrive à mon 1e calendrier	
CMAPIFolder oFolder = olNs.GetDefaultFolder(9);
j ai essayé ceci, mais sans succes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
CItems myItems = oFolder.get_Items();
CItems myItems2 = myItems.GetNext();
CMAPIFolder oFolder2 = myItems2.GetNext();
CItems MyCalendrier = oFolder2.get_Items();
J'ai aussi essayé ceci pour simplement voir si à la compil j'avais quelque chose
résultat: "membre inexistant"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
CItems MyCalendrier = oFolder.get_Items();
Et je tente de creer un rdv
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
LPDISPATCH lp = olApp.CreateItem(1);
   VARIANT v1;
   v1.vt = VT_DISPATCH;
   v1.pdispVal = lp;
 
   CAppointmentItem olAppt = MyCalendrier.Add(v1);
Et cela plante.


Je veux donc atteindre le 3eme calendrier pour y introduire un Rdv.
La seule manière que j'ai trouvé jusqu'ici pour accéder à ce 3e calendrier, est d'utiliser 'GetNext()' deux fois à partir du calendrier principal.
Cela n'a pas l'air de marcher.

Et après, comment faire cet CAppointmentItem ?

On ne peut pas dire qu'il y ait beaucoup de doc en C++/Mfc.

Je tourne en rond là dessus depuis 2 semaines.
Que de temps perdu pour si peu !
On ne remerciera jamais assez Kro$oft pour ces temps perdus, où en fin de journée, on a une tête pleine de riens.
Enfin pas grand chose, et un bon mal de tête.

Si quelqu'un(e) a une piste ?