Desenvolvendo suplementos do manipulador de protocolo
Observação
O Windows Desktop Search 2.x é uma tecnologia obsoleta que estava originalmente disponível como um suplemento para Windows XP e Windows Server 2003. Em versões posteriores, use a Pesquisa do Windows .
Você pode estender a Pesquisa de Área de Trabalho do Microsoft Windows (WDS) para incluir novos armazenamentos de dados implementando um manipulador de protocolo personalizado.
Indexando armazenamentos de dados com manipuladores de protocolo
Um armazenamento de dados é uma fonte de conteúdo (um sistema de banco de dados, um diretório, um sistema de arquivos) em que os dados são armazenados e podem ser rastreados pelo WDS Indexer. O repositório pode ser hierárquico (como um banco de dados) ou baseado em link (como um site). Um manipulador de protocolo permite que aplicativos de indexação como o WDS rastreiem sistematicamente os nós de um armazenamento de dados para extrair informações relevantes a serem incluídas no índice. Cada manipulador de protocolo é usado para indexar um tipo específico de armazenamento de dados. O WDS é fornecido com manipuladores de protocolo para repositórios do sistema de arquivos e para armazenamentos de dados do Microsoft Outlook e do Microsoft Outlook Express (repositórios de email, . Arquivos PST e assim por diante). Ao indexar o email do Outlook, por exemplo, o manipulador de protocolo rastreia todas as mensagens em todas as pastas extraindo informações de cada mensagem e anexo. Essas informações são passadas para o Indexador para incluir no catálogo do WDS.
Muitas vezes, os usuários precisam pesquisar outros armazenamentos de dados, como bancos de dados herdados, repositórios de email ou estruturas de dados sem suporte do WDS. Você pode estender o WDS para rastrear um novo armazenamento de dados usando ou implementando um manipulador de protocolo especificamente para esse armazenamento de dados. Primeiro, você deve primeiro determinar se já existe um manipulador de protocolo para seu armazenamento de dados, talvez para uso com outro aplicativo, como SharePoint Services. Nesse caso, você pode instalar esse manipulador de protocolo no sistema. Se, no entanto, outro manipulador de protocolo não existir, você precisará implementar um. Os manipuladores de protocolo WDS usam as mesmas especificações de design que SharePoint Services e geralmente podem ser usados de forma intercambiável.
Além disso, se o armazenamento de dados contiver dados ou tipos de arquivo diferentes de um dos 200 tipos de arquivo compatíveis com o WDS, você também precisará implementar um filtro para acessar e indexar o conteúdo dos itens no repositório. O WDS 2.x usa o manipulador de protocolo e a tecnologia IFilterusada pelo SharePoint Services. Se você já tiver filtros para um repositório específico e um tipo de arquivo instalados no sistema que está sendo indexado, o WDS usará as interfaces existentes para indexar esses dados.
Roteiro para adicionar novos armazenamentos de dados
Para estender o WDS para rastrear novos armazenamentos de dados, você pode criar um manipulador de protocolo e um ou mais dos seguintes suplementos: manipulador de menu de contexto, manipulador de ícones e um suplemento SearchProtocolOptions.
Crie e registre um manipulador de protocolo multithread para o armazenamento de dados:
- ISearchProtocol – essa interface acessa um protocolo e mapeia uma URL para um IUrlAccessor.
- IUrlAccessor – essa é a interface main usada para acessar itens da fonte de conteúdo e associar o conteúdo ao filtro apropriado.
- IProtocolHandlerSite – essa interface é usada para solicitar e carregar filtros adicionais.
- IFilter – essa interface retorna a URL de cada item em uma pasta como propriedades de valor para processamento.
Observação
A funcionalidade mínima de suplemento necessária para retornar os resultados da pesquisa de um armazenamento de dados não hierárquico é uma implementação das interfaces ISearchProtocol e IUrlAccessor.
Implemente a interface ISearchProtocolOptions para incluir opções personalizadas de manipulador de protocolo, como páginas de início predefinidas:
- ISearchProtocolOptions – essa interface define URLs padrão para o manipulador de protocolo processar, determina quais são os requisitos para um manipulador de protocolo e determina se os requisitos foram atendidos em um determinado sistema.
Estenda o Shell para incluir elementos de interface do usuário, como menus de contexto e ícones específicos do arquivo, implementando as seguintes interfaces:
- IShellFolder – essa interface, que é usada para gerenciar pastas, é necessária para fornecer as interfaces IContextMenu e IExtractIcon para uma URL em um novo repositório.
- IPersistFolder – essa interface é necessária para instruir um objeto de pasta shell a se inicializar.
- IPersist – essa interface fornece o CLSID (identificador de classe) de um objeto que pode ser armazenado persistentemente no sistema.
- IContextMenu - Essa interface define o menu de contexto de clique com o botão direito do mouse para um item apontado por URL.
- IExtractIcon – essa interface define o ícone a ser exibido para um item apontado por URL.
Implemente um mecanismo para notificar o Indexador de alterações no armazenamento de dados:
- ISearchItemsChangedSink – Essa interface permite que o manipulador de protocolo notifique o Índice de alterações no armazenamento de dados. Isso melhora o desempenho garantindo que o Indexador não rastreie todo o repositório em índices incrementais.
Tópicos relacionados