Partager via


Notification de l’index des modifications (fonctionnalités d’environnement Windows héritées)

Notes

Windows Desktop Search 2.x est une technologie obsolète qui était initialement disponible en tant que complément pour Windows XP et Windows Server 2003. Dans les versions ultérieures, utilisez plutôt Recherche Windows .

Avec Microsoft Windows Desktop Search (WDS) 2.6, les gestionnaires de protocole pour un magasin de données donné peuvent indiquer à l’indexeur WDS quand les données de leur magasin ont changé. Cela améliore les performances en garantissant que l’indexeur n’analyse pas la totalité du magasin sur les index incrémentiels. À l’aide des API de notification, les gestionnaires de protocole peuvent informer l’indexeur qu’un élément a été déplacé ou supprimé, et ils peuvent ajouter des étendues à la file d’attente d’analyse de l’indexeur WDS des URL nécessitant une indexation. La notification est utile pour les applications telles que la messagerie, où le gestionnaire de protocole surveille le magasin et avertit l’indexeur que des éléments ont changé et nécessitent une indexation.

ISearchItemsChangedSink

Les gestionnaires de protocole notifient l’indexeur des modifications par le biais de l’interface ISearchItemsChangedSink . Les informations sur les modifications de données doivent être collectées dans SEARCH_ITEM_CHANGE structs et SEARCH_KIND_OF_CHANGE types d’énumération, puis communiquées à l’indexeur via la méthode OnItemsChanged de l’interface ISearchItemsChangedSink .

Pour accéder à cette interface, un gestionnaire de protocole personnalisé doit d’abord instancier un objet ISearchManager pour accéder à l’objet ISearchCatalogManager . À partir de là, on peut instancier un objet ISearchItemsChangedSink et notifier l’indexeur des modifications de données.

La méthode OnItemsChanged vous permet de collecter et de communiquer les modifications de données à votre magasin de données client pour lancer l’indexation.

Sens Variable Description
Dans dwNumberofChanges Nombre total de modifications dans la notification.
Dans DataChangeEntries[] Toutes les notifications de modification dans un tableau de structures SEARCH_ITEM_CHANGE.
Sortie dwBatchId ID de lot qui sera renvoyé avec des erreurs.
Sortie hrCompletionCodes[] Indique si chaque URL a été acceptée pour l’indexation.

 

La structure SEARCH_ITEM_CHANGE identifie le type de modification qui s’est produite, ainsi que l’URL actuelle et l’URL précédente de l’élément, le cas échéant. La structure est définie comme suit :

Nom de la propriété Type de propriété Description
Modifier SEARCH_KIND_OF_CHANGE Type de modification qui est notifié.
URL LPWSTR URL de l’objet qui a changé.
OldURL LPWSTR Si la notification est un déplacement, l’ancienne URL est fournie et doit être unique.
Priorité SEARCH_NOTIFICATION_PRIORITY Priorité de la modification.

 

L’énumération SEARCH_KIND_OF_CHANGE est définie comme suit :

Valeur Enum Valeur Description
SEARCH_CHANGE_ADD 0 La notification concerne une URL supplémentaire.
SEARCH_CHANGE_DELETE 1 La notification concerne la suppression d’une URL.
SEARCH_CHANGE_MODIFY 2 La notification indique qu’une URL a été modifiée.
SEARCH_CHANGE_MOVE_RENAME 3 La notification concerne le déplacement et le renommage d’un objet vers une nouvelle URL.
SEARCH_CHANGE_SEMANTICS_DIRECTORY 0x10000 La notification concerne une URL de conteneur.
SEARCH_CHANGE_SEMANTICS_SHALLOW 0x20000 La notification concerne une URL de conteneur dont les propriétés de conteneur doivent uniquement être indexées.
SEARCH_CHANGE_SEMANTICS_SECURITY 0x40000 La notification concerne une URL ou une URL de conteneur dont les propriétés de sécurité ont été modifiées.

 

L’énumération SEARCH_NOTIFICATION_PRIORITY est définie comme suit :

Valeur Enum Valeur Description
SEARCH_NORMAL_PRIORITY 0 Seule une priorité normale doit être utilisée lors de l’indexation de l’URL. Ces notifications sont traitées avant l’indexation incrémentielle en arrière-plan normale des fichiers et des magasins d’un utilisateur.