質問

これは基本的なタスクのようですが、何らかの理由で解決策を見つけることができません。

Internet Explorerで検索プロバイダーをプログラムでインストールする方法を教えてください。インストーラーにNSISを使用しています。

役に立ちましたか?

解決

Internet Explorerの検索サービスを手動でインストールする公式に文書化された方法はないようです。 公式のメソッドは実装するようです

window.external.AddSearchProvider("URL")

IE 7+で表示すると、ユーザーに検索サービスのインストールを促すプロンプトが表示されます。

ただし、少し調べてみると、少なくともIE 8は次の場所に検索サービスをインストールしているようです(NSIS変数を使用):

%LOCALAPPDATA%\Microsoft\Internet Explorer\Services\

そのフォルダをチェックアウトして(少なくとも1つの検索サービスをインストールした後)、構造を確認します。 .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ファイルを使用して、関連する関数を呼び出します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top