Pergunta

Esta parece ser uma tarefa básica, mas eu sou incapaz de encontrar uma solução por algum motivo.

Como posso instalar programaticamente um fornecedor de pesquisa no Internet Explorer?Eu estou usando INE para o meu instalador.

Foi útil?

Solução

Não parece ser qualquer oficialmente documentada para instalar manualmente o Internet Explorer do serviço de pesquisa.O método oficial parece ser a implementação de

window.external.AddSearchProvider("URL")

que, quando visualizado com IE 7+, irá solicitar que o usuário instale o serviço de pesquisa.

No entanto, com um pouco de fuçar, parece que o IE 8, pelo menos, é a instalação de serviços de busca na seguinte localização (usando INE variáveis):

%LOCALAPPDATA%\Microsoft\Internet Explorer\Services\

Confira essa pasta (depois de instalar pelo menos um serviço de busca) para ver a estrutura.Parece que você só precisa de uma .ico e (possivelmente) um OpenSearch .arquivo xml.Você também vai precisar de algumas definições de registo (descrito abaixo).

No entanto, para pesquisas simples (sem auto-sugestão), parece que você pode começar afastado com apenas configurar o seu serviço de pesquisa no registro.A localização das definições de pesquisa no registro é:

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{guid}

onde {guid} é um GUID identificando o serviço de pesquisa.Novamente, basta examinar o que os outros serviços de pesquisa de ter feito, e não parece haver qualquer documentação oficial para esse tipo de coisa.O Google, por exemplo, apenas especifica uma URL para o seu serviço usando o OpenSearch substituições na URL para alcançar a magia.

NOTA:desde que não há, aparentemente, nenhuma documentação pública sobre isso, é provável que tudo isso pode mudar no futuro.Se você não usar o método oficial (no navegador), você pode acabar dando suporte a vários de instalação diferentes métodos.

Boa sorte!

Outras dicas

http://msdn.microsoft.com/en-us/library/cc849066(v=vs.85).aspx agora parece ser o método suportado para IE8+

Baixe o IE8 SDK de http://www.microsoft.com/download/en/details.aspx?id=22015 e use os arquivos OpenService.H e OpenService.idl para chamar as funções relevantes.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top