IFilter::GetChunk 方法 (filter.h)

注意

从 Windows XP 开始,索引服务不再受支持,并且从 Windows 8 开始不可用。 请改用 Windows 搜索 进行客户端搜索,使用 Microsoft Search Server Express 进行服务器端搜索。

将筛选器置于下一个区块的开头,如果这是对 GetChunk 方法的第一次调用,则定位在第一个区块处,并返回当前区块的说明。

语法

SCODE GetChunk(
  [out] STAT_CHUNK *pStat
);

参数

[out] pStat

指向包含当前区块说明 的 STAT_CHUNK 结构的指针。

返回值

此方法可以返回其中一个值。

返回代码 说明
S_OK
操作已成功完成。
FILTER_E_END_OF_CHUNKS
上一个区块是最后一个区块。
FILTER_E_EMBEDDING_UNAVAILABLE
下一个区块是嵌入区块,没有可用的内容筛选器。
FILTER_E_LINK_UNAVAILABLE
下一个区块是一个链接,没有可用的内容筛选器。
FILTER_E_PASSWORD
密码或其他与安全相关的访问失败。
FILTER_E_ACCESS
常规访问失败。

备注

如果返回时 pStat 指向 breakType 成员等于 CHUNK_NO_BREAK 的STAT_CHUNK结构,则只有 idChunk 成员将更新为新的区块标识符 (ID) 值。 STAT_CHUNK 结构的其他成员保持不变。

不能使用 CHUNK_NO_BREAK 串联 CHUNKSTATE 枚举值为 CHUNK_VALUE) 的内部值类型属性 (区块。 一个单词不能跨越两个以上的粘附区块。

区块 ID 为零无效。

首次调用 GetChunk 方法之前,没有当前区块。 在出现错误后,返回除FILTER_E_END_OF_CHUNKS对 GetChunk 方法的下一次调用的代码将检索不可用区块之后的下一个区块。

调用方备注

GetChunk 方法完成后,*pStat 中描述的区块是当前区块。 区块描述符由调用 GetChunk 方法的例程拥有,但属性名称指针(可在属性规范中设置)归 GetChunk 方法所有,不应释放。

实施者说明

如果对链接或嵌入对象的内容筛选器的 GetChunk 方法的调用返回FILTER_E_END_OF_CHUNKS,则实现应返回链接或嵌入对象的下一个区块。 例如,如果文档有两个嵌入对象,而第一个已返回FILTER_E_END_OF_CHUNKS,则外部内容筛选器必须为嵌入对象调用内容筛选器的 GetChunk 方法。

在返回对嵌入对象或链接对象上的 GetChunk 方法调用的结果之前,检查以确保区块 ID 是唯一的。 否则,实施者必须重新编号区块并保留新区块 ID 的映射。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 filter.h

请参阅

IFilter

STAT_CHUNK