Accéder à un magasin sur le serveur distant quand Outlook est en mode Exchange mis en cache
S’applique à : Outlook 2013 | Outlook 2016
Cette rubrique contient un exemple de code en C++ qui montre comment utiliser l’indicateur MAPI_NO_CACHE pour ouvrir un dossier ou un message sur une banque de messages sur le serveur distant lorsque Microsoft Office Outlook est en mode Exchange mis en cache.
Le mode Exchange mis en cache permet à Outlook d’utiliser une copie locale de la boîte aux lettres d’un utilisateur tandis qu’Outlook maintient une connexion en ligne à une copie distante de la boîte aux lettres de l’utilisateur sur le serveur Exchange distant. Quand Outlook s’exécute en mode Exchange mis en cache, par défaut, toutes les solutions MAPI qui se connectent à la même session sont également connectées à la banque de messages mise en cache. Toutes les données accessibles et toutes les modifications apportées sont effectuées sur la copie locale de la boîte aux lettres.
Un client ou un fournisseur de services peut remplacer la connexion à la banque de messages locale et ouvrir un message ou un dossier sur le magasin distant en définissant le bit pour MAPI_NO_CACHE dans le paramètre ulFlags lors de l’appel de IMsgStore ::OpenEntry.
L’exemple de code suivant montre comment appeler IMsgStore ::OpenEntry avec l’indicateur MAPI_NO_CACHE défini dans le paramètre ulFlags pour ouvrir le dossier racine sur la banque de messages distante.
HRESULT HrOpenRootFolder (
LPMDB lpMDB,
LPMESSAGE* lpRootFolder)
{
ULONG ulObjType = NULL;
HRESULT hRes = lpMDB->OpenEntry(
0,// size of entry ID
NULL, // Pointer to entry ID
NULL, // Use default interface (IMAPIFolder)
MAPI_BEST_ACCESS | MAPI_NO_CACHE, // Flags
&ulObjType,
// Output parameter indicates the type of object returned
(LPUNKNOWN *) lpRootFolder)); // Pointer to put the opened folder in
return hRes;
}
Si vous avez ouvert la banque de messages avec l’indicateur MDB_ONLINE sur le serveur distant, vous n’avez pas besoin d’utiliser l’indicateur MAPI_NO_CACHE .