我们有一个拥有7个共享的网络服务器和数百万个所有类型的文件。我们创建了一个自定义目录(SERVER_INDEX),以便我们可以跨多个这些共享专门搜索PDF文件。我们一直在使用IXSSO组件来执行这些搜索,但在安装更新2698365之后,这在Win7中不再有效。我可以从Microsoft安装Hotfix,但我想要一个现在和将来都可以使用的解决方案。
我研究了用于搜索SYSTEMINDEX的Microsoft文档。这在搜索C:时很有效,但在定向到网络共享时不返回任何行。我使用的主要文档是"使用SQL和AQS方法查询索引(Windows)"
查询命令字符串:
@"SELECT Top 5 System.ItemPathDisplay FROM SYSTEMINDEX
WHERE SCOPE='file:c:/users/halw/desktop' AND system.filename LIKE '%pdf' ";
准确地返回所要求的内容。
是否可以使用此语法查询网络共享上的自定义索引服务器目录而不是SYSTEMINDEX?我尝试以我能想象的每种格式使用前缀为服务器名称的目录名称。 System.Data.dll返回"未指定错误"在所有情况下。
ISearchQueryHelper是否可行?我尝试使用TlbImp.exe(来自v7.0A,v7.1A没有exe)从Win7 SDK(v7.1A)安装SearchAPI.tlb但是我无法注册生成的dll(regsvr32说它有没有切入点;可能是版本问题,但我不知道。)。