Requisitos de formatação de URL

A partir do Windows 7, as inconsistências permanecem na manipulação e análise de URLs. Este tópico fornece um guia limitado sobre como lidar com inconsistências em formatos de URL de arquivo.

Este tópico é organizado da seguinte maneira:

Formatos de URL em uso

Os protocolos de terceiros são responsáveis por definir seu formato de URL e definir consultas de maneira que esteja em conformidade com seu padrão. Por exemplo, o Microsoft Outlook dá suporte a nomes de pastas com caracteres arbitrários, incluindo aqueles que são ilegais em URLs, como o "?" caractere. O manipulador de protocolo MAPI faz sua própria codificação de URL de suas URLs. Portanto, o índice armazena "%3F" em vez de "?" , e o Outlook deve levar isso em conta ao criar consultas.

Os diferentes formatos são listados na tabela a seguir e cada um recebe um identificador de letra para fazer referência a cada um mais adiante neste tópico.

ID URL de arquivo local ou remota Example
A Local file:///c:\test\example\
B Local file:c:/test/example/
C Local c:\test\example\
D Remoto file:///\\server\share\
E Remoto file://server/share/
F Remoto \\server\share\

 

Direção da barra, estrela à direita e sensibilidade de barra à direita

Na pesquisa do Windows, não há muita sensibilidade em relação à direção da barra. Se o formato c:\test\example for aceito, c:/test/example também será aceito. No entanto, embora SCOPE geralmente não seja sensível à direção da barra, ele é sensível à direção da barra no caso do formato de URL remoto F. Portanto, Scope = '//server/share' não funciona.

A única API que é sensível a asteriscos finais e distingue entre c:\test\ e c:\test\* é ISearchCrawlScopeManager. Se houver uma regra de exclusão para c:\test\*, o próprio diretório c:\test de URL ainda será indexado. Mas se a URL de exclusão for c:\test\, o próprio diretório c:\test de URL não será indexado.

Há dois locais em que a Pesquisa do Windows é sensível a barras finais: consultas de ItemUrl e Path. Se houver um diretório c:\test, a Pesquisa do Windows tratará c:\test\ de forma diferente de c:\test predicados como path = 'c:\test' e System.ItemUrl = 'c:\test'. Por exemplo, o predicado path='file:c:/test' corresponderia ao diretório c:\test, mas path='file:c:/test/' não corresponderia, devido à barra final.

Formatos de URL por API e consultas

Os formatos de URL de arquivo local aceitos por APIs e consultas selecionadas estão listados na tabela a seguir. Os formatos são associados a uma letra (A a F), o significado do qual foi indicado na seção "Formatos de URL em Uso" anteriormente neste tópico.

API ou consulta Formato A Formato B Formatar C
ISearchCrawlScopeManager S N S
IGatherNotifyInline::OnDataChange S S S
ISearchCatalogManager::ReindexMatchingURLs S S S
ISearchCatalogManager::ReindexSearchRoot S N N
ISearchCatalogManager2::PrioritizeMatchingURLs S S S
Escopo= N S S
Diretório= N S S
ItemUrl= N S S
Caminho= N S S

 

Os formatos de URL de arquivo remoto aceitos por consultas selecionadas estão listados na tabela a seguir.

Query Formatar D Formato E Formato 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
Escopo= S S S
Diretório= S S S
ItemUrl= S S S
Caminho= S S S

 

O que está incluído no índice

Processo de indexação na Pesquisa do Windows

Processo de consulta na Pesquisa do Windows

Processo de notificações na Pesquisa do Windows