STAT_CHUNK-Struktur (filter.h)
Hinweis
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.
Beschreibt die Merkmale eines Blöckes.
Syntax
typedef struct tagSTAT_CHUNK {
ULONG idChunk;
CHUNK_BREAKTYPE breakType;
CHUNKSTATE flags;
LCID locale;
FULLPROPSPEC attribute;
ULONG idChunkSource;
ULONG cwcStartSource;
ULONG cwcLenSource;
} STAT_CHUNK;
Member
idChunk
Der Blockbezeichner. Blockbezeichner müssen für die aktuelle instance der IFilter-Schnittstelle eindeutig sein. Blockbezeichner müssen sich in aufsteigender Reihenfolge befinden. Die Reihenfolge, in der Blöcke nummeriert werden, sollte der Reihenfolge entsprechen, in der sie im Quelldokument angezeigt werden. Einige Suchmaschinen können die Nähe von Blöcken verschiedener Eigenschaften nutzen. Wenn ja, ist die Reihenfolge, in der Blöcke mit unterschiedlichen Eigenschaften ausgegeben werden, für die Suchmaschine wichtig.
breakType
Der Typ des Umbruchs, der den vorherigen Block vom aktuellen Block trennt. Werte stammen aus der CHUNK_BREAKTYPE-Enumeration .
flags
Gibt an, ob dieser Block einen Texttyp oder eine Werttypeigenschaft enthält. Flagwerte werden aus der CHUNKSTATE-Enumeration übernommen. Wenn das CHUNK_TEXT-Flag festgelegt ist, sollte IFilter::GetText verwendet werden, um den Inhalt des Blöckes als Eine Reihe von Wörtern abzurufen. Wenn das flag CHUNK_VALUE festgelegt ist, sollte IFilter::GetValue verwendet werden, um den Wert abzurufen und als einzelner Eigenschaftswert zu behandeln. Wenn der Filter vorschreibt, dass derselbe Inhalt sowohl als Text als auch als Wert behandelt wird, sollte der Block zweimal in zwei verschiedenen Blöcken ausgegeben werden, wobei jeweils ein Flag festgelegt ist.
locale
Die Sprache und Untersprache, die einem Textblock zugeordnet ist. Das Gebietsschema "Block" wird von Dokumentindexern verwendet, um einen ordnungsgemäßen Textumbruch durchzuführen. Wenn der Block weder texttyp noch werttyp mit dem Datentyp VT_LPWSTR, VT_LPSTR oder VT_BSTR ist, wird dieses Feld ignoriert.
attribute
Die -Eigenschaft, die auf den Block angewendet werden soll. Siehe FULLPROPSPEC. Wenn ein Filter erfordert, dass derselbe Text über mehrere Eigenschaften verfügt, muss er den Text einmal für jede Eigenschaft in separaten Blöcken ausgeben.
idChunkSource
Die ID der Quelle eines Blocks. Der Wert des idChunkSource-Elements hängt von der Art des Blocks ab:
- Wenn der Block eine Texttypeigenschaft ist, muss der Wert des idChunkSource-Elements mit dem Wert des idChunk-Elements identisch sein.
- Wenn der Block eine interne Werttypeigenschaft ist, die vom Textinhalt abgeleitet wird, ist der Wert des idChunkSource-Elements die Block-ID für den Texttypblock, von dem er abgeleitet wird.
- Wenn die Filterattribute angeben, dass nur interne Werttypeigenschaften zurückgegeben werden sollen, gibt es keinen Inhaltsblock, von dem die aktuelle interne Werttypeigenschaft abgeleitet werden kann. In diesem Fall muss der Wert des idChunkSource-Elements auf Null festgelegt werden, was ein ungültiger Block ist.
cwcStartSource
Der Offset, ab dem der Quelltext für einen abgeleiteten Block im Quellblock beginnt.
cwcLenSource
Die Länge in Zeichen des Quelltexts, von dem der aktuelle Block abgeleitet wurde. Ein Nullwert steht für eine Zeichenkorrespondenz zwischen dem Quelltext und dem abgeleiteten Text. Ein Wert ungleich 00 bedeutet, dass keine solche direkte Korrespondenz vorhanden ist.
Hinweise
Die letzten drei Member (idChunkSource, cwcStartSource und cwcLenSource) werden verwendet, um die Quelle eines abgeleiteten Blöckes zu beschreiben. d. h. eine, die einem Textabschnitt wieder zugeordnet werden kann. Beispielsweise kann die Überschrift eines Kapitels sowohl eine Texttypeigenschaft als auch eine interne Werttypeigenschaft sein? eine Überschrift. Die Werttypeigenschaft "heading" wäre ein abgeleiteter Block. Wenn der Text des aktuellen Werttypblocks (von einer internen Werttypeigenschaft) von einem Texttypblock abgeleitet wird, muss er mehrmals ausgegeben werden.
Das folgende Segment ist ein Beispiel dafür, wie dies in einem Buch passieren kann.
Der kleine Detektiv rief aus: "C'est fini!"
Geständnisse
Der Raum schwieg mehrere Minuten. Nachdem sie sehr intensiv darüber nachgedacht hatte, fragte die junge Frau: "Aber woher wussten Sie schon?"
Dieses Segment kann wie folgt in Blöcke unterteilt werden.
ID | Text | BreakType | Flags | Gebietsschema | attribute |
---|---|---|---|---|---|
1 | Die kleine Dete | – | CHUNK_TEXT | ENGLISH_UK | CONTENT |
2 | ctive ex anspruchsgefordert, | CHUNK_NO_BREAK | – | – | – |
3 | "C'est fini!" | CHUNK_EOW | CHUNK_TEXT | FRENCH_BELGIAN | CONTENT |
4 | Geständnisse | CHUNK_EOC | CHUNK_TEXT | ENGLISH_UK | CHAPTER_NAMES |
5 | Geständnisse | CHUNK_EOP | CHUNK_TEXT | ENGLISH_UK | CONTENT |
6 | Der Raum schwieg mehrere Minuten. | CHUNK_EOP | CHUNK_TEXT | ENGLISH_UK | CONTENT |
7 | Nachdem sie sehr intensiv darüber nachgedacht hatte, fragte die junge Frau: "Aber woher wussten Sie schon?" | CHUNK_EOS | CHUNK_TEXT | ENGLISH_UK | CONTENT |
Informationen von idChunkSource, cwcStartSource und cwcLenSource sind nützlich für eine Suchmaschine, die Treffer hervorruft. Wenn die Abfrage für eine interne Werttypeigenschaft ausgeführt wird, hebt die Suchmaschine den ursprünglichen Text hervor, aus dem der Text der internen Werttypeigenschaft abgeleitet wurde. Bei instance hebt der Browser in einem C++-Codefilter bei der Suche nach MyFunction in der internen Werttypeigenschaft "Funktionsdefinitionen" den Funktionsheader in der Datei hervor.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Kopfzeile | filter.h |