Zurückgeben von Eigenschaften von einem Filterhandler
Eigenschaften werden mithilfe registrierter Eigenschaftenhandler oder mithilfe von Filtern, die für bestimmte Dateitypen registriert sind, aus Elementen extrahiert. Ein Filterhandler (eine Implementierung der IFilter-Schnittstelle) kann den Inhalt eines Dateityps auf verschiedene Weise interpretieren.
Dieses Thema ist 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 der IFILTER _ FLAGS _ OLE _ PROPERTIES-Member dieser Enumeration auf eins festgelegt ist, verwendet Windows Search die Schnittstellen IPropertySetStorage und IPropertyStorage, um externe Werttypeigenschaften aufzählen und darauf zu zugreifen. |
| IFilter::GetChunk | Gibt Informationen aus einem Dokument in "Chunks" mit Blocktyp (Text oder Wert), Name und Locale zurück. Ein Block 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 eigenschaft external value-type (mithilfe der Methoden der DocTitle Schnittstellen IPropertySetStorage und IPropertyStorage) und die interne Werttypeigenschaft (die als Ergebnis einer benutzerdefinierten IFilter-Implementierung ermittelt wurde) beschreiben das Dokument als Book Ganzes. Die Texttypeigenschaften Contents und beschreiben den Inhalt des Chapter Dokuments. Bei der Verarbeitung dieses Dokuments identifiziert und extrahiert der Filterhandler (eine Implementierung der IFilter-Schnittstelle) diese Eigenschaften.

Größenbeschränkungen für Eigenschaften
Es gibt zwei potenzielle Einschränkungen bei der Eigenschaftengröße:
- Die maximale Größe der Daten, die Windows Search akzeptiert, pro Datei.
- Die maximale Größe pro Eigenschaft, wie in der Eigenschaftenbeschreibungsdatei definiert.
Derzeit verwendet Windows Search nicht die definierte Eigenschaftsgröße, wenn die Menge der Daten berechnet wird, die von einem Element akzeptiert werden. Stattdessen ist das limit, Windows Search verwendet, das Produkt aus der Größe der Datei und der MaxGrowFactor (Dateigröße N * MaxGrowFactor), die aus der Registrierung gelesen wird. Der Standardwert MaxGrowFactor ist vier.
HKEY_LOCAL_MACHINE
SOFTWARE
Microsoft
Gathering Manager
MaxGrowFactor
Wenn Ihr Dateityp tendenziell klein ist, aber größere Eigenschaften aufweist, akzeptiert Windows Search möglicherweise nicht alle Eigenschaftsdaten, die Sie aus geben möchten. Sie können jedoch erhöhen, MaxGrowFactor um Ihren Anforderungen gerecht zu werden.
Weitere Ressourcen
- Das IFilterSample-Codebeispiel, das auf GitHub verfügbar ist,veranschaulicht, wie eine IFilter-Basisklasse zum Implementieren der IFilter-Schnittstelle erstellt wird.
- Eine Übersicht über den Indizierungsprozess finden Sie unter Der Indizierungsprozess.
- Eine Übersicht über Dateitypen finden Sie unter Dateitypen.
- Informationen zum Abfragen von Dateiassoziationsattributen für einen Dateityp finden Sie unter PerceivedTypes, SystemFileAssociations und Application Registration.
- Eine Übersicht über Eigenschaften und Eigenschaftenhandler sowie eine Liste der Systemeigenschaften, die Sie für Ihre Dateiformate verwenden können, finden Sie unter Developing Property Handlers for Windows Search.
Zugehörige Themen
Informationen zu Filterhandlern in Windows Search
Bewährte Methoden zum Erstellen von Filterhandlern in Windows Search
Filterhandler, die mit Windows
Implementieren von Filterhandlern in Windows Search