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. |