从 Windows 7 开始,URL 的处理和分析仍存在不一致。 本主题提供了有关文件URL格式不一致问题的有限指南。
本主题按如下所示进行组织:
使用的 URL 格式
第三方协议负责定义其 URL 格式,并以符合其标准的方式定义查询。 例如,Microsoft Outlook 支持包含任意字符的文件夹名称,包括 URL(如字符) "?" 中非法的文件夹名称。 MAPI 协议处理程序对其 URL 执行自己的 URL 编码。 因此,索引存储 "%3F" 而不是 "?" ,Outlook 在创建查询时必须考虑到这一点。
下表中列出了不同的格式,并为每个格式分配了一个字母标识符,用于在本主题后面引用它们。
| ID | 本地文件 URL 或远程文件 URL | Example |
|---|---|---|
| A | Local | file:///c:\test\example\ |
| B | Local | file:c:/test/example/ |
| C | Local | c:\test\example\ |
| D | Remote | file:///\\server\share\ |
| E | Remote | file://server/share/ |
| F | Remote | \\server\share\ |
斜杠方向、末尾星号和末尾斜杠的敏感度
在 Windows 搜索中,主要没有斜杠方向的敏感度。 如果接受格式 c:\test\example ,则也接受 c:/test/example。 但是,虽然 SCOPE 通常对斜杠方向不敏感,但在远程 URL 格式 F 的情况下对斜杠方向很敏感。 Scope = '//server/share' 因此,它不起作用。
唯一对尾随星敏感并区分 c:\test\ 和 c:\test\* 的 API 是 ISearchCrawlScopeManager。 如果存在用于 c:\test\* 的排除规则,则 URL 目录 c:\test 本身仍会被索引。 但是,如果排除 URL 是 c:\test\,则不会为 URL 目录 c:\test 本身编制索引。
Windows 搜索在以下两个位置对尾部斜杠敏感:ItemUrl 和 Path 查询。 如果存在目录c:\test,Windows 搜索对c:\test\和c:\test中的谓词,如path = 'c:\test'和System.ItemUrl = 'c:\test',进行不同的处理。 例如,谓词 path='file:c:/test' 可以与目录 c:\test 匹配,但谓词 path='file:c:/test/' 则不行,因为尾部的斜杠。
按 API 和查询设置的 URL 格式
下表中列出了所选 API 接受的本地文件格式和查询。 格式与字母(A 到 F)相关联,其含义在本主题前面的“使用 URL 格式”部分中表示。
| API(应用程序接口)或查询 | A 格式 | 格式 B | 设置 C 格式 |
|---|---|---|---|
| ISearchCrawlScopeManager | Y | N | Y |
| IGatherNotifyInline::OnDataChange | Y | Y | Y |
| ISearchCatalogManager::ReindexMatchingURLs | Y | Y | Y |
| ISearchCatalogManager::ReindexSearchRoot | Y | N | N |
| ISearchCatalogManager2::PrioritizeMatchingURLs | Y | Y | Y |
| 范围= | N | Y | Y |
| 目录= | N | Y | Y |
| 项目地址:ItemUrl= | N | Y | Y |
| 路径= | N | Y | Y |
下表中列出了选定查询所接受的远程文件URL格式。
| Query | 格式 D | 格式 E | 格式 F |
|---|---|---|---|
| ISearchCrawlScopeManager | N/A | N/A | N/A |
| IGatherNotifyInline::OnDataChange | N/A | N/A | N/A |
| ISearchCatalogManager::ReindexMatchingURLs | N/A | N/A | N/A |
| ISearchCatalogManager::ReindexSearchRoot | N/A | N/A | N/A |
| ISearchCatalogManager2::PrioritizeMatchingURLs | N/A | N/A | N/A |
| 范围= | Y | Y | Y |
| 目录= | Y | Y | Y |
| 项目地址:ItemUrl= | Y | Y | Y |
| 路径= | Y | Y | Y |
相关主题