0

我想从我用 C# 完成的 BHO 打开一个新选项卡。Process.Start(u) 打开一个新窗口,而不是选项卡,并调用默认浏览器,可能不是 IE。

我想打开新选项卡以提示用户下载并安装最新版本的 BHO。

4

1 回答 1

3

从 BHO 执行此操作的正确方法是使用IWebBrowser2::Navigate2()( doc link ) 并通过navOpenInNewTab( doc link )。

互操作存在于 pinvoke.net,因此您可能可以从它开始。

您可以按照以下步骤从您的站点获取 IWebBrowser2 指针:

  1. QueryInterface() 您的站点的 IID_IServiceProvider。
  2. QueryService() SID_STopLevelBrowser、IID_IServiceProvider 的 IServiceProvider。
  3. QueryService() SID_SWebBrowserApp、IID_IWebBrowser2 的顶级 IServiceProvider。

...但我不知道如何在 C# 中做到这一点。

于 2012-02-21T18:06:31.223 回答