Internet explorer 安装搜索提供程序[Internet Explorer]

Internet explorer 安装搜索提供程序[Internet Explorer],internet-explorer,search-engine,nsis,opensearch,Internet Explorer,Search Engine,Nsis,Opensearch,这似乎是一项基本任务,但由于某种原因,我无法找到解决方案 如何在Internet Explorer中以编程方式安装搜索提供程序?我正在为我的安装程序使用NSIS。似乎没有任何官方记录的手动安装Internet Explorer搜索服务的方法。这似乎是要实现的 window.external.AddSearchProvider("URL") 当使用IE 7+查看时,将提示用户安装搜索服务 然而,稍加留意,IE 8似乎至少正在以下位置安装搜索服务(使用NSIS变量): 检查该文件夹(在安装至少一个

这似乎是一项基本任务,但由于某种原因,我无法找到解决方案


如何在Internet Explorer中以编程方式安装搜索提供程序?我正在为我的安装程序使用NSIS。

似乎没有任何官方记录的手动安装Internet Explorer搜索服务的方法。这似乎是要实现的

window.external.AddSearchProvider("URL")
当使用IE 7+查看时,将提示用户安装搜索服务

然而,稍加留意,IE 8似乎至少正在以下位置安装搜索服务(使用NSIS变量):

检查该文件夹(在安装至少一个搜索服务后)以查看结构。看起来您只需要一个.ico和(可能)一个.xml文件。您还需要一些注册表设置(如下所述)

但是,对于简单的搜索(没有自动建议),看起来您只需在注册表中设置搜索服务即可。搜索设置在注册表中的位置为:

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{guid}
其中{guid}是标识搜索服务的guid。再一次,只要检查一下其他搜索服务都做了些什么,因为似乎没有任何关于这类事情的官方文档。例如,谷歌只是在URL中使用OpenSearch替换为他们的服务指定了一个URL,以实现这一神奇

注意:由于显然没有关于这方面的公开文档,因此所有这些都可能在未来发生变化。如果不使用官方方法(在浏览器中),最终可能会支持多种不同的安装方法

祝你好运

现在似乎是IE8支持的方法+


从下载IE8 SDK,并使用openservice.h和openservice.idl文件调用相关函数。

既然你接受了我的回答,我想一切都很顺利?回应你的评论:我还没有机会尝试,但你的信息肯定会对我有所帮助。“当我尝试它时,我会在这里发表评论。@AndrewEnsley你有最终的解决方案吗?”?对于IE 11?如何在C#或PowerShell中使用
openservice.h和openservice.idl
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{guid}