Windows 搜索) (CRUMB 参数

参数 crumb 支持 (AQS) 语句的完整高级查询语法,并且作为控制搜索范围的一种方法特别有用。 除了 AQS 元素以外,crumb参数还可以在 Windows Vista 上采用特殊参数,kindstore在 XP 上也可以采用特殊location参数,如本主题后面部分所述。

本主题的组织方式如下:

 

Crumb 语法

crumb 语法如下所示:

crumb=<column>:<value>[,<label>][,<column>:<value>[,<label>]]& 

列<>部分是属性系统中的任何属性,值<>部分是该属性的有效值。 部分

常规示例

crumb=System.Author:paolo&
crumb=store:mapi&
crumb=location:c%3a%5cMyVacationPix,Vacation&

 

将 crumb 与 Vista (位置)

在 crumb 参数中,Windows Vista 支持完整的 AQS 和 location 属性,该属性具有仅在 Windows Vista 上提供的特殊实现。 可以在单个 crumb 参数中使用 AQS 字符串或 location 属性,但不能同时使用两者。 如果 crumb 参数包含 AQS,则忽略该 crumb 参数中的其他所有内容。

使用 location 属性可以指定要搜索的路径。 如果位置在索引器的爬网范围之外,Windows Vista 可以绕过索引器并直接遍历目录。 因此,这些搜索可能比使用索引器的搜索慢。

指定属性时,支持和可选两个 location 附加参数:

参数 说明
包含 include、exclude 指定查询应包括或排除该路径中的项。 “Include”是默认值。 Windows Vista 不支持不包含任何内容的排除项。 (请参阅示例)
递归 递归、非递归 指定搜索是否应从 location:<value> 中定义的值开始递归所有子文件夹。 默认值为“递归”。

 

若要使用 search-ms: 协议限定搜索范围,可以使用不同的选项,具体取决于范围的目标。

本地计算机上的文件夹:

  • 使用 AQS (crumb=folder:<URL 编码的路径>)
  • 使用 location 参数 (crumb=location:<URL 编码的路径>)

远程计算机/网络上的文件夹:

  • 使用 location 参数 (crumb=location:<URL 编码的路径>)

通过已知的 UNC 协议处理程序访问的文件夹:

  • 使用 AQS (crumb=store:<UNC 协议处理程序名称>)
  • 使用 location 参数 (crumb=location:<URL 编码的路径>)

Vista 示例

search-ms:query=vacation&crumb=location:shell%3aPersonal,include,recursive&

search-ms:crumb=location:c%3a%5cPictures&crumb=location:c%3a%5cPictures%5cDuplicates,,exclude& 

search-ms:crumb=location:c%3a%5cDocuments&crumb=kind:pics&

第一个示例从 shell://Personal 位置开始执行“休假”搜索, (用户“我的文档”文件夹) 的特殊快捷方式,包括该文件夹和所有子文件夹。 请参阅下表。

第二个示例在 C:\Pictures 中执行搜索,但不在 C:\Pictures\Duplicates 中执行搜索。

第三个示例在 C:\Documents 中执行搜索,仅限于将 kind 属性设置为 pics 的文件。

常用文件夹的常量

Windows Vista 允许使用 KNOWNFOLDERID 值,这些值提供一种与系统无关的唯一方式来标识应用程序经常使用的特殊文件夹,但这些文件夹在任何给定系统上可能不具有相同的名称或位置。 例如,系统文件夹在一个系统上可以是“C:\Windows”,在另一个系统上可以是“C:\Winnt”。 在 Windows Vista 之前,已使用 CSIDL

通过以下语法使用这些位置:

crumb=location:shell%3a<LocationName>&

 

将 crumb 与 Windows XP 配合使用 (种类和存储)

对于 Windows XP (WDS 3.x) 上的 Windows 搜索,AQS 术语“kind”和“store”具有特殊实现。 “kind”值与 WDS 2.x 中使用的值相同。 “store”值包括:

  • mapi
  • 文件
  • outlookexpress
  • any

XP 示例

search-ms:query=from:john&crumb=store:outlookexpress,OE%20Mail&
search-ms:query=from:john&crumb=kind:communications&

第一个示例返回来自 John 且带有自定义标签“OE Mail”的 Microsoft Outlook Express 电子邮件。 第二个示例执行来自 John 的任何通信的搜索。

使用 Parameter-Value 参数入门

区域设置标识符参数

语法参数

STACKEDBY 参数

SUBQUERY 参数