Установить поисковик [Internet Explorer]

Это кажется основной задачей, но я не могу найти решение по какой-то причине.

Как программно установить поисковую систему в Internet Explorer? Я использую NSIS для моего установщика.

2 ответа

Решение

Похоже, не существует официально документированного способа вручную установить службу поиска Internet Explorer. Официальный метод заключается в реализации

window.external.AddSearchProvider("URL")

который при просмотре с IE 7+ предложит пользователю установить службу поиска.

Однако, немного возни, кажется, что IE 8, по крайней мере, устанавливает службы поиска в следующем месте (используя переменные NSIS):

%LOCALAPPDATA%\Microsoft\Internet Explorer\Services\

Проверьте эту папку (после установки хотя бы одной службы поиска), чтобы увидеть структуру. Похоже, вам просто нужен.ico и (возможно) файл OpenSearch.xml. Вам также понадобятся некоторые настройки реестра (описанные ниже).

Тем не менее, для простых поисков (без самовнушения) похоже, что вы можете просто настроить свою службу поиска в реестре. Расположение параметров поиска в реестре:

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

где {guid} - это GUID, идентифицирующий службу поиска. Опять же, просто изучите, что сделали другие поисковые службы, поскольку официальной документации для такого рода вещей не существует. Google, например, просто указывает URL-адрес своей службы, используя замены OpenSearch в URL-адресе, чтобы достичь цели.

ПРИМЕЧАНИЕ: поскольку, по-видимому, нет общедоступной документации по этому вопросу, вполне вероятно, что все это может измениться в будущем. Если вы не используете официальный метод (в браузере), вы можете в конечном итоге поддерживать несколько различных методов установки.

Удачи!

http://msdn.microsoft.com/en-us/library/cc849066(v=vs.85).aspx теперь представляется поддерживаемым методом для IE8+

Загрузите IE8 SDK с http://www.microsoft.com/download/en/details.aspx?id=22015 и используйте файлы openservice.h и openservice.idl для вызова соответствующих функций.

Другие вопросы по тегам