IFilter::GetText 方法 (filter.h)
注意
從 Windows XP 開始,不再支援編製索引服務,無法從 Windows 8 使用。 請改用 Windows 搜尋 進行客戶端搜尋,並使用 Microsoft Search Server Express 進行伺服器端搜尋。
從目前的區塊擷取文字 (文字類型屬性) ,其必須具有 CHUNK_TEXT的 CHUNKSTATE 列舉值。
語法
SCODE GetText(
[in, out] ULONG *pcwcBuffer,
[out] WCHAR *awcBuffer
);
參數
[in, out] pcwcBuffer
在專案上,寬/Unicode 字元的 awcBuffer 陣列大小。 結束時,寫入 awcBuffer 的 Unicode 字元數目。
[out] awcBuffer
從目前區塊擷取的文字。 請勿以字元終止緩衝區。 使用以 Null 結尾的字串。 以 Null 結尾的字串不應超過目的地緩衝區的大小。
傳回值
這個方法可以傳回其中一個值。
傳回碼 | 描述 |
---|---|
|
作業已順利完成。 |
|
目前區塊之STAT_CHUNK結構的旗標成員沒有值CHUNK_TEXT。 |
|
已傳回目前區塊中的所有文字。 GetText 方法的其他呼叫應該會傳回此錯誤,直到成功呼叫 IFilter::GetChunk 方法為止。 |
|
做為優化,傳回文字的最後一個呼叫可以傳回FILTER_S_LAST_TEXT,表示下一次呼叫 GetText 方法會傳回FILTER_E_NO_MORE_TEXT。 此優化可藉由消除 對 GetText 的不必要的呼叫來節省時間。 |
備註
如果目前區塊對 awcBuffer 陣列太大,可能需要對 GetText 方法進行多個呼叫,才能擷取目前區塊中的所有文字。 每次呼叫 GetText 方法時,都會擷取緊接最後一次呼叫 GetText 方法文字的文字。 一個呼叫的最後一個字元可以位於單字中間,而下一個呼叫中的第一個字元會繼續該字。 搜尋引擎必須處理這種情況。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | filter.h |