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 de filtres inscrits pour des types de fichiers spécifiques. Un gestionnaire de filtres (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 de propriétés sont répertoriées dans le tableau suivant.
Méthode | Description |
---|---|
IFilter::Init | Retourne l’énumération IFILTER_FLAGS . Si le IFILTER_FLAGS_OLE_PROPERTIES membre de cette énumération est défini sur un, recherche Windows utilise les interfaces d’interfaces IPropertySetStorage et IPropertyStorage pour énumérer et accéder aux propriétés de type valeur externes. |
IFilter::GetChunk | Retourne des informations d’un document en « blocs » avec le type de bloc (texte ou valeur), le nom et les 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
value-type externe (obtenue à l’aide des 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écrivent le contenu du document. Lors du traitement de ce document, le gestionnaire de filtre (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 à la taille des propriétés :
- Taille maximale des données que Recherche Windows accepte par fichier.
- Taille maximale par propriété, telle que définie dans le fichier de description de propriété.
Actuellement, Recherche Windows n’utilise pas la taille de propriété définie lors du calcul de la quantité de données qu’il accepte à partir d’un élément. Au lieu de cela, la limite utilisée par Recherche Windows est le produit de la taille du fichier et de la MaxGrowFactor
(taille de fichier N * MaxGrowFactor) lu à partir du Registre. La valeur par défaut MaxGrowFactor
est quatre.
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 Search peut ne pas accepter toutes les données de propriété que vous souhaitez émettre. Toutefois, vous pouvez augmenter le pour MaxGrowFactor
répondre à 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 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 d’un type de fichier, consultez PerceivedTypes, 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 Search.
Rubriques connexes
Développement de gestionnaires de filtres
À propos des gestionnaires de filtres dans Windows Search
Meilleures pratiques pour la création de gestionnaires de filtres dans Windows Search
Gestionnaires de filtre fournis avec Windows
Implémentation de gestionnaires de filtres dans Windows Search