Freigeben über


IFILTER_INIT-Enumeration (filter.h)

[Der Indizierungsdienst wird ab Windows XP nicht mehr unterstützt und steht ab Windows 8 nicht mehr zur Verfügung. Verwenden Sie stattdessen Windows Search für die clientseitige Suche und Microsoft Search Server Express für die serverseitige Suche.]

Flags, die den Filterprozess steuern.

Syntax

typedef enum tagIFILTER_INIT {
  IFILTER_INIT_CANON_PARAGRAPHS = 1,
  IFILTER_INIT_HARD_LINE_BREAKS = 2,
  IFILTER_INIT_CANON_HYPHENS = 4,
  IFILTER_INIT_CANON_SPACES = 8,
  IFILTER_INIT_APPLY_INDEX_ATTRIBUTES = 16,
  IFILTER_INIT_APPLY_OTHER_ATTRIBUTES = 32,
  IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES = 256,
  IFILTER_INIT_INDEXING_ONLY = 64,
  IFILTER_INIT_SEARCH_LINKS = 128,
  IFILTER_INIT_FILTER_OWNED_VALUE_OK = 512,
  IFILTER_INIT_FILTER_AGGRESSIVE_BREAK = 1024,
  IFILTER_INIT_DISABLE_EMBEDDED = 2048,
  IFILTER_INIT_EMIT_FORMATTING = 4096
} IFILTER_INIT;

Konstanten

 
IFILTER_INIT_CANON_PARAGRAPHS
Wert: 1
Absatzumbrüche sollten mit dem Unicode-ABSATZTRENNZEICHEN (0x2029) gekennzeichnet werden.
IFILTER_INIT_HARD_LINE_BREAKS
Wert: 2
Weiche Rückgaben, z. B. das Zeilenumbruchzeichen in Word, sollten durch harte Rückgaben ersetzt werden? ZEILENTRENNZEICHEN (0x2028). Vorhandene harte Rückgaben können verdoppelt werden. Ein Wagenrücklauf (0x000D), Zeilenvorschub (0x000A) oder der Wagenrücklauf und der Linienvorschub in Kombination sollten als harter Rücklauf betrachtet werden. Die Absicht besteht darin, Musterausdruck-Übereinstimmungen zu aktivieren, die mit beobachteten Zeilenumbrüchen übereinstimmen.
IFILTER_INIT_CANON_HYPHENS
Wert: 4
Verschiedene Textverarbeitungsprogramme verfügen über Formen von Bindestrichen, die nicht im Hostzeichensatz dargestellt werden, z. B. optionale Bindestriche (die nur am Ende einer Zeile angezeigt werden) und nicht unterbrechende Bindestriche. Dieses Flag gibt an, dass optionale Bindestriche in NULL konvertiert werden sollen, und nicht brechende Bindestriche in normale Bindestriche (0x2010) oder HYPHEN-MINUSES (0x002D).
IFILTER_INIT_CANON_SPACES
Wert: 8
So wie das Flag IFILTER_INIT_CANON_HYPHENS Bindestriche standardisiert, werden leerzeichen standardisiert. Alle Sonderzeichen, z. B. nicht unterbrechende Leerzeichen, werden in das Standard-Leerzeichen (0x0020) konvertiert.
IFILTER_INIT_APPLY_INDEX_ATTRIBUTES
Wert: 16
Gibt an, dass der Client Text in Blöcke aufteilen möchte, die interne Werttypeigenschaften darstellen.
IFILTER_INIT_APPLY_OTHER_ATTRIBUTES
Wert: 32
Alle Eigenschaften, die nicht durch die IFILTER_INIT_APPLY_INDEX_ATTRIBUTES- und IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES-Flags abgedeckt sind, sollten ausgegeben werden.
IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES
Wert: 256
Gibt an, dass der Client Text in Blöcke aufteilen möchte, die eigenschaften darstellen, die während des Indizierungsprozesses bestimmt wurden.
IFILTER_INIT_INDEXING_ONLY
Wert: 64
Optimiert IFilter für die Indizierung, da der Client die IFilter::Init-Methode nur einmal aufruft und IFilter::BindRegion nicht aufruft. Dadurch entfällt die Möglichkeit, sowohl vor als auch nach dem Zugriff auf einen anderen Block auf einen Blöcke zuzugreifen.
IFILTER_INIT_SEARCH_LINKS
Wert: 128
Der Textextraktionsprozess muss alle verknüpften Objekte im Dokument rekursiv durchsuchen. Wenn ein Link nicht verfügbar ist, sollte der IFilter::GetChunk-Aufruf , der den ersten Abschnitt des Links abgerufen hätte, FILTER_E_LINK_UNAVAILABLE zurückgeben.
IFILTER_INIT_FILTER_OWNED_VALUE_OK
Wert: 512
Der Inhaltsindizierungsprozess kann vom Filter festgelegte Eigenschaftswerte zurückgeben.
IFILTER_INIT_FILTER_AGGRESSIVE_BREAK
Wert: 1024
TBD
IFILTER_INIT_DISABLE_EMBEDDED
Wert: 2048
TBD
IFILTER_INIT_EMIT_FORMATTING
Wert: 4096
TBD

Hinweise

Im Allgemeinen sollte die Textausgabe der IFilter::GetText-Methode genau mit dem tatsächlichen Text des Dokuments übereinstimmen. Um jedoch eine maximale Interoperabilität zu erreichen, ist eine gewisse Standardisierung gemeinsamer Features wünschenswert. Zu diesen Features gehören Absatzumbrüche, Zeilenumbrüche, Bindestriche und Leerzeichen. IFilter-Schnittstellenserver können auch NULL-Zeichen in Text einbetten, die von Clients fast ignoriert werden. Das heißt, Unicode-Zeichen 0x0000 werden vollständig ignoriert, und 0x0001 wird als Wortumbruch behandelt.

Vier Flags steuern die Textstandardisierung: IFILTER_INIT_CANON_PARAGRAPHS, IFILTER_INIT_HARD_LINE_BREAKS, IFILTER_INIT_CANON_HYPHENS und IFILTER_INIT_CANON_SPACES.

Verschiedene Clients der IFilter-Schnittstelle möchten unterschiedliche Ansichten eines Objekts. Drei Flags, IFILTER_INIT_APPLY_INDEX_ATTRIBUTES, IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES und IFILTER_INIT_APPLY_OTHER_ATTRIBUTES, steuern den Satz von Eigenschaften, die auf Blöcke angewendet werden sollen. Darüber hinaus können bestimmte Eigenschaften in Aufrufen der IFilter::Init-Methode als Array der Größe cAttributes angefordert werden, das in aAttributes gespeichert ist.

IFilter-Schnittstellenimplementierungen müssen einige Blockinformationen speichern, wenn andere Vorgänge als die Inhaltsindizierung ausgeführt werden. IFILTER_INIT_INDEXING_ONLY optimiert den Filter für die Indizierung.

Zu Anzeigezwecken kann es wünschenswert sein, linksübergreifend sowie im Dokument und allen einbettenden Objekten zu suchen. IFILTER_INIT_SEARCH_LINKS gibt an, dass alle Links rekursiv durchsucht werden.

Bestimmte IFilter-Schnittstellenimplementierungen können während des Inhaltsindizierungsprozesses Eigenschaftswerte generieren, und IFILTER_INIT_FILTER_OWNED_VALUE_OK gibt an, dass es in Ordnung ist, diese Werte zurückzugeben.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Kopfzeile filter.h

Weitere Informationen

Ifilter