Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O Gerenciador de Escopo de Rastreamento (CSM) permite definir regras de escopo que incluem ou excluem URLs do escopo de rastreamento da Pesquisa do Windows.
O CSM permite que você faça o seguinte:
- Adicionar novas regras de escopo ao conjunto de regras de trabalho
- Remover regras de escopo existentes
- Enumerar regras de escopo padrão
- Descubra se uma URL específica está incluída ou excluída do escopo de rastreamento ou tem uma regra de escopo pai ou filho
Este tópico inclui os seguintes assuntos:
- Sobre regras de escopo
- Antes de começar
- Adicionando regras de escopo
- Removendo regras de escopo
- Revertendo para regras padrão
- Enumerando regras de escopo
- Regras de escopo de rastreamento
- tópicos relacionados
Sobre regras de escopo
Uma regra de escopo é uma regra que define se URLs em uma raiz de pesquisa devem ser rastreadas e indexadas ou não. As regras de inclusão fazem com que o indexador inclua essa URL no escopo de rastreamento, e as regras de exclusão fazem com que o indexador exclua essa URL (e seus subitens) do escopo de rastreamento.
Por exemplo, suponha que você tenha instalado um novo aplicativo cujos arquivos de dados estão localizados na pasta WorkteamA\ProjectFiles em um computador local. Suponha que você queira tudo dentro da pasta ProjectFiles indexado, exceto itens na subpasta Prototypes. Nessa situação, você precisaria de uma regra de inclusão para myPH:///C:\WorkteamA\ProjectFiles\ e uma regra de exclusão para myPH:///C:\WorkteamA\ProjectFiles\Prototypes\.
Há três tipos de regras, com a seguinte ordem de precedência:
- As regras de Política de Grupo são definidas pelos administradores e podem substituir todas as outras regras.
- As regras de usuário são definidas pelos usuários que modificam o escopo na interface do usuário de opções do Windows Search. Usuários ou outros aplicativos podem remover todas as regras de usuário e reverter para regras padrão.
- Normalmente, as regras padrão são definidas por um aplicativo para definir um escopo padrão. Por exemplo, as regras padrão podem ser definidas quando um novo manipulador de protocolo ou contêiner é adicionado ao sistema.
Juntos, esses tipos de regras compõem o conjunto de regras de trabalho do qual o Gerenciador de Escopo de Rastreamento (CSM) gera a lista completa de URLs a serem rastreadas. Embora as regras padrão possam ser substituídas por regras de política de grupo e por regras de usuário, elas são mantidas em seu próprio conjunto de regras padrão, que você pode reverter a qualquer momento. O indexador rastreia as URLs do conjunto de regras de trabalho e adiciona itens, propriedades e conteúdo ao catálogo.
Observação
Os usuários com acesso ao Painel de Controle podem modificar as regras por meio dessa interface. Portanto, os aplicativos que oferecem gerenciamento de escopo devem sempre obter as regras diretamente do CSM usando os métodos de enumeração em vez de depender de uma cópia salva das regras de usuário.
As regras de exclusão podem definir URLs de padrão com o caractere curinga '*'; por exemplo: file:///C:\ProjectA\*\. Uma regra de exclusão usando esse padrão impede que o indexador rastreie todas as pastas no diretório do ProjectA. Para um exemplo mais complicado, suponha que haja uma regra de inclusão para file:///C:\ProjectA\ e uma regra de padrão de exclusão para file:///C:\ProjectA\*\data\*. Nesse caso, o indexador rastrearia itens em:
- C:\ProjectA\
- C:\ProjectA\version1\testfiles\
- C:\ProjectA\version1\temp\data\
Mas o indexador não rastrearia itens em:
- C:\ProjectA\version1\data\
Antes de começar
Antes de usar qualquer uma das interfaces do Gerenciador de Escopo de Rastreamento, você deve executar as seguintes etapas prévias:
- Crie o objeto CSearchManager e obtenha sua interface ISearchManager .
- Chame ISearchManager::GetCatalog para "SystemIndex" para obter uma instância da interface ISearchCatalogManager .
- Chame ISearchCatalogManager::GetCrawlScopeManager para obter uma instância da interface ISearchCrawlScopeManager .
Depois de fazer alterações no Gerenciador de Escopo de Rastreamento, você deve chamar o método ISearchCrawlScopeManager::SaveAll . Esse método não usa parâmetros e retorna S_OK com êxito.
Adicionando regras de escopo
As regras de trabalho definidas para o CSM incluem regras padrão e de usuário, bem como quaisquer regras forçadas pela política de grupo. As regras de usuário são configuradas pelos usuários em uma interface do usuário e as regras padrão podem ser definidas por qualquer uma das seguintes:
- Políticas de grupo implementadas por um administrador do sistema (elas não usam a interface ISearchCrawlScopeManager .)
- A instalação ou atualização de um aplicativo como o Windows Search ou um manipulador de protocolo
- Um aplicativo de instalação para a adição de um novo armazenamento de dados ou contêiner
O ISearchCrawlScopeManager fornece dois métodos para adicionar novas regras de escopo, conforme descrito na tabela a seguir. Os caminhos para regras de inclusão para o sistema de arquivos devem terminar com uma barra invertida '\' (por exemplo, file:///C:\files\) e os caminhos para regras de exclusão devem terminar com um asterisco (por exemplo, file:///c:\files\*). Somente as regras de exclusão podem conter URLs de padrão. Além disso, recomendamos incluir SIDs (identificadores de segurança) dos usuários em caminhos, para melhorar a segurança. Os caminhos por usuário são mais seguros, pois as consultas seriam executadas em um processo por usuário, garantindo que um usuário não possa ver itens indexados da caixa de entrada de outro usuário, por exemplo.
A tabela a seguir descreve os métodos da interface ISearchCrawlScopeManager usada para adicionar novas regras de escopo.
| Método | Description |
|---|---|
| AddUserScopeRule | Adiciona uma regra para uma URL, conforme especificado pelo usuário. Essas regras substituem as regras padrão. Use esse método se você implementou uma interface do usuário que permite que os usuários gerenciem suas próprias regras de escopo e URLs. |
| AddDefaultScopeRule | Adiciona uma regra para uma URL, conforme especificado por outro aplicativo, como um manipulador de protocolo. Use esse método quando você implementou um novo manipulador de protocolo ou adicionou um novo armazenamento de dados. Essas regras podem ser substituídas por regras de usuário. |
Cada método leva uma URL para um local indexável e sinalizadores que determinam se a URL deve ser incluída ou excluída. O parâmetro fFollowFlags é reservado para uso futuro. Quando você adiciona uma nova regra de escopo e o Gerenciador de Escopo de Rastreamento determina que a regra já existe (com base na URL ou no padrão fornecido), o conjunto de regras de trabalho é atualizado para que (1) a regra antiga seja substituída pela nova regra e (2) todas as regras de usuário que a contradizam sejam removidas.
Dica: Embora a raiz file:// seja incluída por padrão no escopo de rastreamento, a pasta Program Files não é indexada por padrão. Portanto, aplicativos com dados salvos no diretório arquivos de programas precisam adicionar sua localização como uma regra padrão.
Anotações sobre regras de usuário
Se uma nova regra de usuário for a mesma que uma regra padrão existente, a nova regra de usuário substituirá a regra padrão no conjunto de regras de trabalho. Se a nova regra de usuário for a mesma que uma regra de usuário existente, a regra de usuário antiga será substituída.
Definir o sinalizador fOverrideChildren tem os seguintes resultados no conjunto de regras de trabalho:
- TRUE resulta na remoção de todas as regras subordinadas do conjunto de regras de trabalho (regras de usuário e regras padrão).
- O valor FALSO resulta na readição ao conjunto de regras de trabalho de todas as regras padrão que são filhas da nova regra de usuário. Se uma regra padrão secundária for uma inclusão e a nova regra de usuário for uma exclusão, a regra padrão será alterada para uma regra de usuário inclusiva.
Removendo regras de escopo
Você pode usar a interface ISearchCrawlScopeManager para remover uma regra de escopo do conjunto de regras de trabalho. Essa interface fornece os dois métodos a seguir para remover regras de escopo.
| Método | Description |
|---|---|
| RemoveScopeRule | Remove uma regra de usuário para uma URL especificada do conjunto de regras de trabalho. Se a regra de usuário for uma duplicata ou substituir uma regra padrão, a regra padrão permanecerá no conjunto de regras de trabalho. |
| RemoveDefaultScopeRule | Remove uma regra padrão para uma URL especificada do conjunto de regras de trabalho e do conjunto de regras padrão. Depois de chamar esse método, você não pode reverter para essa regra padrão usando RevertToDefaultScopes. |
Cada método usa uma URL e um sinalizador que indica se a regra a ser removida é uma regra de inclusão ou exclusão. Esses métodos retornarão um erro se uma regra com aquela URL e o sinalizador de inclusão/exclusão não for encontrada.
Dica: Se você quiser remover um escopo completamente do escopo de rastreamento, use o método RemoveRoot, que remove a raiz da pesquisa e todas as regras de escopo associadas. Fazer isso durante a desinstalação, por exemplo, é considerada a melhor prática.
Também é possível remover todas as substituições definidas pelo usuário de uma raiz de pesquisa e reverter para a raiz de pesquisa original e regras de escopo padrão. Para obter mais informações, consulte a próxima seção.
Observação
No Windows Vista, se os usuários forem removidos por meio de Perfis de Usuário no Painel de Controle, o CSM removerá todas as regras e raízes que incluem seu SID e removerá seus itens indexados do catálogo. No Windows XP, você deve remover as raízes e as regras dos usuários manualmente.
Revertendo para regras padrão
Revertendo para regras padrão remove todas as regras de usuário de uma URL ou raiz e restaura todas as regras padrão para o conjunto de regras em funcionamento. No entanto, ele não remove as regras definidas pela política de grupo. O método RevertToDefaultScopes não usa parâmetros e retorna um código de erro se não for possível reverter para regras padrão.
Enumerando regras de escopo
O CSM enumera regras de escopo usando uma interface de enumerador de estilo COM padrão, IEnumSearchScopeRules . Você pode usar essa interface para enumerar regras de escopo para várias finalidades. Por exemplo, talvez você queira exibir o conjunto de regras em operação em uma interface do usuário ou descobrir se uma regra ou uma sub-regra já está no escopo de rastreamento.
Regras de escopo de rastreamento
O CSM também permite verificar se uma URL especificada está incluída no escopo de rastreamento e se possui uma regra de escopo de pai ou de filho. Você também pode descobrir por que uma URL é incluída ou excluída do escopo de rastreamento. Esses métodos não devem ser usados com URLs de padrão.
A tabela a seguir descreve os métodos de ISearchCrawlScopeManager usados para adicionar novas regras de escopo.
| Método | Description |
|---|---|
| GetParentScopeVersionId | Obtém a identificação da versão da URL de inclusão principal. Você pode usar esse método para ver se o escopo pai foi alterado desde a última vez que você o verificou. Exemplo: se um aplicativo de email usa notificações gerenciadas pelo provedor, ele pode obter a versão do escopo pai antes de fechar e verificar a versão novamente quando ela for aberta. Em seguida, o aplicativo pode determinar se precisa enviar um novo conjunto de notificações por push para o indexador. |
| HasChildScopeRule | Retorna TRUE se a URL especificada tiver uma regra filha (uma regra que se aplica a um filho em qualquer nível dentro de sua hierarquia de URL). Exemplo: se a URL for file:///C:\Folder\, esse método retornará TRUE se o CSM tiver uma regra de escopo especificamente para file:///C:\Folder\Subfolder\. |
| HasParentScopeRule | Retorna TRUE se a URL especificada tiver uma regra pai (uma regra que se aplica a um pai em qualquer nível na hierarquia de URL). Exemplo: se a URL for file:///C:\Folder\Subfolder, esse método retornará TRUE se o CSM tiver uma regra de escopo especificamente para file:///C:\Folder\. |
| IncludedInCrawlScope | Retornará TRUE se a URL especificada estiver incluída no escopo de rastreamento. |
| IncludedInCrawlScopeEx | Retorna um valor da enumeração CLUSION_REASON explicando por que a URL está incluída ou excluída do escopo de rastreamento e recupera o valor TRUE se a URL estiver incluída no escopo de rastreamento. Esse método pode ajudá-lo a identificar conflitos em seu conjunto de regras de trabalho. |
Observação
Os métodos IncludedInCrawlScope e IncludedInCrawlScopeEx determinam se a URL será rastreada com base apenas nas regras no CSM. Pode haver outros motivos pelos quais uma URL não é rastreada, como o bit FANCI ser ativado (ou seja, um usuário não permitiu a indexação rápida na caixa de diálogo Propriedades da pasta.)
Se você acredita que um caminho de arquivo deve ser excluído, mas ele está listado como incluído, certifique-se de que as regras de exclusão terminem com "<path>\*". Se você acredita que um arquivo ou um caminho de arquivo deveria estar incluído, mas não está, verifique a configuração do bit FANCI para o arquivo ou caminho. Você pode fazer isso clicando com o botão direito do mouse no arquivo ou no caminho do arquivo e selecionando Propriedades. Em seguida, certifique-se de que a caixa de seleção Para uma busca rápida, permita que o Serviço de Indexação indexe esta pasta esteja marcada. Se o caminho do arquivo ou arquivo não estiver marcado para indexação aqui, ele não será indexado mesmo que esteja em uma regra de inclusão.
Tópicos relacionados
-
Referência
-
Conceitual