Partager via


Cache de surnoms

S’applique à : Outlook 2013 | Outlook 2016

Microsoft Office Outlook 2007, Microsoft Outlook 2010 et Microsoft Outlook 2013 interagir avec le cache de surnoms, également appelé « flux d’autocomplétion ». Le flux de saisie semi-automatique est l’endroit où Outlook conserve la liste de saisie semi-automatique, qui est la liste des noms qui s’affiche dans les zones d’édition À, Cc et Cci pendant qu’un utilisateur compose un e-mail. Cette rubrique décrit comment Outlook 2007, Outlook 2010 et Outlook 2013 interagissent avec le flux de saisie semi-automatique, ainsi que le format binaire du fichier et les méthodes recommandées pour interagir avec le flux de saisie semi-automatique.

Pour les applications qui interagissent avec Outlook 2010 ou Outlook 2013, le flux de saisie semi-automatique est stocké en tant que propriété MAPI et peut être modifié à l’aide de l’objet MAPI ou PropertyAccessor du message. L’objet PropertyAccessor est exposé dans les modèles objet Outlook 2010 ou Outlook 2013.

Il n’existe aucune dépendance sur le modèle objet Outlook 2007 ou les API MAPI. Par conséquent, les applications qui modifient le flux de saisie semi-automatique dans Outlook 2007 peuvent être écrites à l’aide de n’importe quel langage de programmation.

Interaction avec le Stream autocomplétion

Lorsque les zones d’édition À, Cc ou Cci sont accessibles sur un message, le flux de saisie semi-automatique est chargé et la liste des noms d’utilisateur s’affiche. Outlook interagit avec le flux de saisie semi-automatique de deux façons :

  1. Chargement du flux de saisie semi-automatique

  2. Enregistrement des modifications apportées aux données dans le flux de saisie semi-automatique

Les moyens de stockage des données de saisie semi-automatique diffèrent entre Outlook 2007 et Outlook 2010 ou Outlook 2013 comme suit :

Outlook 2007

Pour Outlook 2007, le flux de saisie semi-automatique est stocké dans un fichier portant le même nom que le profil et une extension de .nk2. Par exemple, si le profil par défaut de « outlook » est utilisé, le fichier sera appelé « outlook.nk2 ». Le fichier .nk2 est stocké dans %APPDATA%\Microsoft\Outlook. Pour plus d’informations sur le format de fichier binaire du cache de surnoms, voir Outlook 2003/2007 NK2 File Format et Instructions pour les développeurs.

Outlook 2010 et Outlook 2013

Outlook 2010 ou Outlook 2013 lit le flux de saisie semi-automatique à partir d’un message dans la table Contenu associé de la boîte de réception du magasin de remise du compte de messagerie. Ce message masqué a une classe de message et l’objet IPM. Configuration.Autocomplete. Le flux de saisie semi-automatique est stocké sur ce message dans la propriété PR_ROAMING_BINARYSTREAM (propriété canonique PidTagRoamingBinary). Les données d’autocomplétion peuvent être temporairement mises en cache dans un fichier .dat autocomplétion situé dans %USERPROFILE%\AppData\Local\Microsoft\Outlook\RoamCache. Toutefois, le fichier .dat n’est qu’un cache et n’est pas utilisé pour réécrire dans le magasin de remise lorsque l’utilisateur quitte Outlook 2010 ou Outlook 2013.

Chargement de l’Stream de saisie semi-automatique

Outlook charge le flux d’autocomplétion chaque fois qu’un élément avec une fonctionnalité d’adressage est initialisé. Par exemple, les adresses e-mail sont utilisées dans un nouveau courrier, une réponse de courrier, un élément de contact, une demande de réunion, etc. Pour charger les données, Outlook lit tout le contenu du flux en mémoire.

Pour les opérations d’autocomplétion, Outlook interagit exclusivement avec cette structure en mémoire pendant la durée de vie du processus outlook.exe. Outlook enregistre uniquement la structure lors de l’arrêt. Pour plus d’informations sur ce processus, consultez la section « Enregistrement de l’Stream de saisie semi-automatique ».

Enregistrement de la Stream de saisie semi-automatique

Outlook enregistre le flux de saisie semi-automatique à l’arrêt si la liste de saisie semi-automatique a changé de l’une des manières suivantes :

  • Une nouvelle entrée de surnom est ajoutée lors de la résolution d’un nom, de la sélection d’un destinataire dans la boîte de dialogue du carnet d’adresses ou de l’envoi d’un courrier électronique à un destinataire qui n’était pas déjà dans la liste.

  • Une entrée est modifiée en envoyant un courrier électronique à un destinataire existant dans la liste.

  • Une entrée est supprimée par l’utilisateur via l’interface utilisateur.

  • Autres scénarios mineurs non pertinents pour cette rubrique.

L’enregistrement des modifications apportées aux données d’autocomplétion implique l’écriture de la structure en mémoire dans un Stream de saisie semi-automatique. Lors de l’interaction avec Outlook 2007, le flux est enregistré dans un fichier .nk2 local. Pour Outlook 2010 ou Outlook 2013, le flux de saisie semi-automatique est réécrit dans la table Contenu associé de la boîte de réception du magasin de remise du compte de messagerie.

Recommandations

  • Ne modifiez jamais partiellement le flux d’autocomplétion. L’interaction prise en charge est la suivante : 1) lire l’intégralité du flux de saisie semi-automatique en mémoire, 2) modifier la structure de la mémoire et 3) réécrire l’intégralité du flux dans la table Contenu associé de la boîte de réception du magasin de remise du compte de messagerie (pour Outlook 2010 ou Outlook 2013) ou dans le fichier .nk2 local (Outlook 2007).

  • N’interagissez pas avec le flux de saisie semi-automatique pendant l’exécution d’Outlook. Si Outlook est en cours d’exécution pendant que vous modifiez le flux, il est probable qu’il remplace vos modifications lors de son arrêt.

  • N’écrivez pas de propriétés de type PT_MV_UNICODE et PR_MV_STRING8 dans un flux de saisie semi-automatique à consommer par Microsoft Outlook 2003. Ces propriétés sont comprises uniquement par Outlook 2007, Outlook 2010 et Outlook 2013.

  • Lorsque vous développez du code qui interagit avec Outlook 2007, nous vous recommandons de verrouiller le fichier .nk2 contre toute modification par d’autres processus pendant que vous le lisez et l’écrivez à l’aide d’API de verrouillage de fichier standard (par exemple, LockFile en C/C++ et FileStream.Lock en C#).

  • Modifiez uniquement les propriétés des types qui proviennent du jeu de lignes du flux de saisie semi-automatique. Pour plus d’informations sur les propriétés et les types de propriétés de flux de saisie semi-automatique, consultez Stream de saisie semi-automatique.

Voir aussi

Stream de saisie semi-automatique

Profils MAPI

Guide pour les développeurs et format de fichier NK2 Outlook 2003/2007