ISearchCrawlScopeManager2::GetVersion 方法 (searchapi.h)

使文件映射映射到调用进程的地址空间,并通知客户端爬网范围管理器 (CSM) 的状态是否已更改。

语法

HRESULT GetVersion(
  [out] long   **plVersion,
  [out] HANDLE *phFileMapping
);

参数

[out] plVersion

类型: LONG**

接收指向包含爬网范围版本的内存映射文件的地址的指针。

[out] phFileMapping

类型: HANDLE*

接收指向具有只读访问权限的文件映射对象的句柄的指针,该对象用于创建包含爬网范围版本的内存映射文件。

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

检索的版本号始终是最新的,并且会随着 CSM 的状态而更改,例如,是否对爬网范围进行了添加或删除。 因此, ISearchCrawlScopeManager2::GetVersion 只需调用一次,因为当前版本始终通过检索的指针保持可用。

ISearchCrawlScopeManager2::GetVersion 不会导致跨进程调用。 如果方法成功,则客户端必须执行以下操作以销毁其地址空间中的所有文件视图,然后关闭文件映射对象的句柄和磁盘上的文件:

  • 使用 plVersion 提供的内存映射文件的指针调用 UnmapViewOfFile
  • 使用文件映射对象的句柄调用 CloseHandle
客户端在使用完内存映射文件后必须执行这些步骤,以防止内存泄漏。

Windows 7 及更高版本:请查看 CrawlScopeCommandLine 代码示例 ,了解如何定义爬网范围管理器的命令行选项 (CSM) 索引操作。

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 searchapi.h