Zurückgeben von Eigenschaften aus einem Filterhandler
Eigenschaften werden aus Elementen extrahiert, die registrierte Eigenschaftenhandler verwenden oder Filter verwenden, die für bestimmte Dateitypen registriert sind. Ein Filterhandler (eine Implementierung der IFilter-Schnittstelle ) kann den Inhalt eines Dateityps beliebig interpretieren.
Dieses Thema wird wie folgt organisiert:
Eigenschaftenfilterung
Bewährte Methoden für die Eigenschaftenfilterung sind in der folgenden Tabelle aufgeführt.
Methode | BESCHREIBUNG |
---|---|
IFilter::Init | Gibt die IFILTER_FLAGS-Enumeration zurück. Wenn das IFILTER_FLAGS_OLE_PROPERTIES Element dieser Enumeration auf eine festgelegt ist, verwendet Windows Search die Schnittstellen "IPropertySetStorage" und "IPropertyStorage" zum Aufzählen und Zugreifen auf externe Werttypeigenschaften. |
IFilter::GetChunk | Gibt Informationen aus einem Dokument in "Chunks" mit Blocktyp (Text oder Wert), Name und Gebietsschema zurück. Ein Abschnitt enthält eine Dokumenteigenschaft. |
IFilter::GetText | Ruft eine Texttypeigenschaft aus einem Block ab. |
IFilter::GetValue | Ruft eine Werttypeigenschaft aus einem Block ab. |
Die folgende Abbildung zeigt ein Beispieldokument. Die externe Werttypeigenschaft (abgerufen mit Methoden der IPropertySetStorage- und IPropertyStorage-Schnittstellen) und der internen Werttypeigenschaft Book
DocTitle
(abgerufen als Ergebnis einer benutzerdefinierten IFilter-Implementierung) beschreiben das Dokument als Ganzes. Die Texttypeigenschaften Contents
und Chapter
beschreiben den Inhalt des Dokuments. Beim Verarbeiten dieses Dokuments identifiziert und extrahiert der Filterhandler (eine Implementierung der IFilter-Schnittstelle ) diese Eigenschaften.
Einschränkungen der Eigenschaftsgröße
Es gibt zwei mögliche Einschränkungen für die Eigenschaftsgröße:
- Die maximale Größe von Daten, die Windows Suche pro Datei akzeptiert.
- Die maximale Größe pro Eigenschaft gemäß definition in der Eigenschaftsbeschreibungsdatei.
Derzeit verwendet Windows Suche beim Berechnen der Datenmenge, die sie von einem Element akzeptiert, nicht die definierte Eigenschaftsgröße. Stattdessen ist der Grenzwert Windows Suche verwendet das Produkt der Größe der Datei und die MaxGrowFactor
(Dateigröße N * MaxGrowFactor) aus der Registrierung gelesen. Der Standardwert MaxGrowFactor
ist vier.
HKEY_LOCAL_MACHINE
SOFTWARE
Microsoft
Gathering Manager
MaxGrowFactor
Wenn Der Dateityp daher eher klein ist, aber größere Eigenschaften aufweist, Windows Suche möglicherweise nicht alle Eigenschaften akzeptiert, die Sie ausgeben möchten. Sie können die MaxGrowFactor
Anforderungen jedoch erhöhen.
Weitere Ressourcen
- Das Im GitHub verfügbare IFilterSample-Codebeispiel veranschaulicht, wie eine IFilter-Basisklasse für die Implementierung der IFilter-Schnittstelle erstellt wird.
- Eine Übersicht über den Indizierungsprozess finden Sie im Indexierungsprozess.
- Eine Übersicht über Dateitypen finden Sie unter "Dateitypen".
- Informationen zum Abfragen von Dateizuordnungsattributen für einen Dateityp finden Sie unter "PerceivedTypes", "SystemFileAssociations" und "Anwendungsregistrierung".
- Eine Übersicht über Eigenschaften und Eigenschaftenhandler sowie eine Liste der Systemeigenschaften, die Sie für Ihre Dateiformate verwenden können, finden Sie unter Entwickeln von Eigenschaftshandlern für Windows Suche.
Zugehörige Themen
Informationen zu Filterhandlern in Windows Suche
Bewährte Methoden zum Erstellen von Filterhandlern in Windows Suche
Filterhandler, die mit Windows
Implementieren von Filterhandlern in Windows Suche