Retour de propriétés à partir d’un gestionnaire de filtres
Les propriétés sont extraites d’éléments à l’aide de gestionnaires de propriétés inscrits ou à l’aide de filtres inscrits pour des types de fichiers spécifiques. Un gestionnaire de filtres (une implémentation de l’interface IFilter ) peut interpréter le contenu d’un type de fichier de plusieurs façons.
Cette rubrique est organisée comme suit :
Filtrage des propriétés
Les meilleures pratiques pour le filtrage des propriétés sont répertoriées dans le tableau suivant.
Méthode | Description |
---|---|
IFilter::Init | Retourne l’énumération IFILTER_FLAGS . Si le membre IFILTER_FLAGS_OLE_PROPERTIES de cette énumération est défini sur un, Windows Search utilise les interfaces IPropertySetStorage et IPropertyStorage pour énumérer et accéder aux propriétés de type valeur externe. |
IFilter::GetChunk | Retourne des informations d’un document en « blocs » avec un type de bloc (texte ou valeur), un nom et des paramètres régionaux. Un bloc contient une propriété de document. |
IFilter::GetText | Obtient une propriété de type texte à partir d’un bloc. |
IFilter::GetValue | Obtient une propriété de type valeur à partir d’un bloc. |
L’illustration suivante montre un exemple de document. La propriété DocTitle
de type valeur externe (obtenue à l’aide de méthodes des interfaces IPropertySetStorage et IPropertyStorage ) et la propriété Book
de type valeur interne (obtenue à la suite d’une implémentation IFilter personnalisée) décrivent le document dans son ensemble. Propriétés de type Contents
texte et Chapter
décrire le contenu du document. Lors du traitement de ce document, le gestionnaire de filtres (une implémentation de l’interface IFilter ) identifie et extrait ces propriétés.
Limitations de taille de propriété
Il existe deux limitations potentielles de la taille des propriétés :
- Taille maximale des données que Windows Recherche accepte par fichier.
- Taille maximale par propriété telle que définie dans le fichier de description de propriété.
Actuellement, Windows Recherche n’utilise pas la taille de propriété définie lors du calcul de la quantité de données qu’elle accepte à partir d’un élément. Au lieu de cela, la limite utilisée par la recherche Windows est le produit de la taille du fichier et de la MaxGrowFactor
lecture (taille de fichier N * MaxGrowFactor) à partir du registre. La valeur par défaut MaxGrowFactor
est 4.
HKEY_LOCAL_MACHINE
SOFTWARE
Microsoft
Gathering Manager
MaxGrowFactor
Par conséquent, si votre type de fichier a tendance à être petit en taille totale mais qu’il a des propriétés plus grandes, Windows Recherche peut ne pas accepter toutes les données de propriété que vous souhaitez émettre. Toutefois, vous pouvez augmenter les MaxGrowFactor
besoins en fonction de vos besoins.
Ressources supplémentaires
- L’exemple de code IFilterSample, disponible sur GitHub, montre comment créer une classe de base IFilter pour implémenter l’interface IFilter.
- Pour obtenir une vue d’ensemble du processus d’indexation, consultez Le processus d’indexation.
- Pour obtenir une vue d’ensemble des types de fichiers, consultez Types de fichiers.
- Pour interroger les attributs d’association de fichiers pour un type de fichier, consultez PerceptiondTypes, SystemFileAssociations et Inscription d’application.
- Pour obtenir une vue d’ensemble des propriétés et des gestionnaires de propriétés, ainsi qu’une liste des propriétés système que vous pouvez utiliser pour vos formats de fichiers, consultez Développement de gestionnaires de propriétés pour Windows Recherche.
Rubriques connexes
Développement de gestionnaires de filtres
À propos des gestionnaires de filtres dans Windows Recherche
Meilleures pratiques pour la création de gestionnaires de filtres dans Windows recherche
Gestionnaires de filtres fournis avec Windows
Implémentation de gestionnaires de filtres dans Windows recherche