filter.) h (IFILTER_INIT 列舉
[從 Windows XP 開始不再支援編制索引服務,而且無法從 Windows 8 開始使用。 請改用 Windows 搜尋 進行用戶端搜尋,並使用 Microsoft Search Server Express 進行伺服器端搜尋。]
控制篩選程式的旗標。
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;
常數
IFILTER_INIT_CANON_PARAGRAPHS 值: 1 段落分隔符號應標示為 Unicode PARAGRAPH SEPARATOR (0x2029) 。 |
IFILTER_INIT_HARD_LINE_BREAKS 值: 2 軟式傳回,例如Word中的分行符號,應該由硬式傳回取代?行分隔符號 (0x2028) 。 現有的硬式傳回可以加倍。 歸位字元 (0x000D) 、換行字元 (0x000A) 或歸位字元和換行字元的組合應該視為硬式傳回。 意圖是啟用與觀察到分行符號相符的模式運算式比對。 |
IFILTER_INIT_CANON_HYPHENS 值: 4 各種文字處理程式都有未在主字元集中表示的連字號形式,例如選擇性的連字號 (只出現在行尾) 和斷斷連字號。 此旗標表示選擇性的連字號會轉換成 Null,而非中斷連字號則會轉換成一般連字號 (0x2010) 或連字號-減號 (0x002D) 。 |
IFILTER_INIT_CANON_SPACES 值: 8 就像IFILTER_INIT_CANON_HYPHENS旗標標準化連字號一樣,這一個會標準化空格。 所有特殊空白字元,例如非中斷空格,都會轉換成標準空白字元 (0x0020) 。 |
IFILTER_INIT_APPLY_INDEX_ATTRIBUTES 值: 16 表示用戶端想要將文字分割成代表內部實數值型別屬性的區塊。 |
IFILTER_INIT_APPLY_OTHER_ATTRIBUTES 值: 32 應該發出IFILTER_INIT_APPLY_INDEX_ATTRIBUTES和IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES旗標未涵蓋的任何屬性。 |
IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES 值: 256 表示用戶端希望文字分割成區塊,代表在編制索引程式期間決定的屬性。 |
IFILTER_INIT_INDEXING_ONLY 值: 64 優化 IFilter 以進行編制索引,因為用戶端只會呼叫 IFilter::Init 方法一次,而且不會呼叫 IFilter::BindRegion。 這可消除存取另一個區塊之前和之後存取區塊的可能性。 |
IFILTER_INIT_SEARCH_LINKS 值: 128 文字擷取程式必須以遞迴方式搜尋檔內的所有連結化物件。 如果連結無法使用,取得連結的第一個區塊的 IFilter::GetChunk 呼叫應該會傳回FILTER_E_LINK_UNAVAILABLE。 |
IFILTER_INIT_FILTER_OWNED_VALUE_OK 值: 512 內容索引程式可以傳回篩選所設定的屬性值。 |
IFILTER_INIT_FILTER_AGGRESSIVE_BREAK 值: 1024 TBD |
IFILTER_INIT_DISABLE_EMBEDDED 值: 2048 TBD |
IFILTER_INIT_EMIT_FORMATTING 值: 4096 TBD |
備註
一般而言, IFilter::GetText 方法的文字輸出應該完全符合檔的實際文字。 不過,為了達到最大的互通性,需要一些常見功能的標準化。 這些功能包括段落分隔符號、分行符號、連字號和空格。 IFilter 介面伺服器也可以在文字中內嵌 Null 字元,用戶端幾乎會忽略這些字元。 也就是說,完全忽略 Unicode 字元0x0000,並將0x0001視為斷詞符號。
四個旗標可控制文字標準化:IFILTER_INIT_CANON_PARAGRAPHS、IFILTER_INIT_HARD_LINE_BREAKS、IFILTER_INIT_CANON_HYPHENS和IFILTER_INIT_CANON_SPACES。
IFilter介面的不同用戶端想要物件的不同檢視。 三個旗標,IFILTER_INIT_APPLY_INDEX_ATTRIBUTES、IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES和IFILTER_INIT_APPLY_OTHER_ATTRIBUTES,控制應該套用至區塊的屬性集。 此外,您可以在呼叫 IFilter::Init 方法時要求特定屬性,做為大小 cAttributes 的陣列,儲存在 aAttributes 中。
發生內容索引以外的作業時,IFilter介面實作需要儲存一些區塊資訊。 IFILTER_INIT_INDEXING_ONLY優化編制索引的篩選準則。
為了方便檢視,建議跨連結以及檔中及其內嵌的任何物件進行搜尋。 IFILTER_INIT_SEARCH_LINKS會指定以遞迴方式搜尋所有連結。
某些 IFilter 介面實作可能會在內容索引程式期間產生屬性值,IFILTER_INIT_FILTER_OWNED_VALUE_OK表示傳回這些值是正常的。
需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
標頭 | filter.h |