以编程方式为 Windows 搜索服务创建目录
Posted
技术标签:
【中文标题】以编程方式为 Windows 搜索服务创建目录【英文标题】:Create a catalog for Windows Search Service programmatically 【发布时间】:2012-09-09 23:35:05 【问题描述】:我已经阅读 Windows 搜索服务文档和示例超过一天了,虽然我学到了很多东西,但我仍然觉得离我正在寻找的答案还差得远。
上下文是我有一个使用索引服务进行全文搜索的网络应用程序。因为这不再受支持并且存在大量错误,所以我想从索引服务迁移到 Windows 搜索服务。
在索引服务解决方案中,我为要索引的文档创建了一个目录(而不是使用默认的系统索引)。具体来说,我使用 CIODMLib.AdminIndexServer 对象根据需要以编程方式创建目录。
在我需要迁移到 WSS 之前,这些都是花花公子。至多我只能在 WSS 文档中找到偶尔提到的目录,而没有关于用 C# 来创建它们的 API。那么,第一个问题:有没有办法以编程方式创建 WSS 目录?
作为后续问题,是否有必要创建多个目录?我可以安全地在 SystemIndex 上使用 SCOPE()(如 SQL 语法)来高效地进行全文查询吗?
【问题讨论】:
注意:使用 SCOPE() 仅提供索引服务目录所做功能的一小部分。在索引服务中,可以轻松控制文件/文件夹包含、文件/文件夹排除、索引计划等。 【参考方案1】:我在全文查询方面遇到了同样的问题。不过,我可以回答,SCOPE 可以用来限制查询,不需要多个目录。
objRecordSet.Open "SELECT System.ItemName, System.ItemTypeText, System.Size FROM SystemIndex WHERE SCOPE='file:c:/users'", objConnection
这几乎是逐字逐句地从 TechNet 上的 vbscript 示例中提取的。
【讨论】:
以上是关于以编程方式为 Windows 搜索服务创建目录的主要内容,如果未能解决你的问题,请参考以下文章