问题 - 想要在现有IE框架内启动具有正确“完整性级别”的新IE选项卡。 就像IELaunchURL()所做的那样,它为我们提供了具有正确完整性级别的新IE实例。
我目前在做什么? 检测现有IEFrame的IWebBrowser2,然后使用URL调用IWebBrowser2-> Navigate2()。为新推出的标签
获取IWebBrowser2答案 0 :(得分:1)
在IWebBrowser2 :: Navigate2方法的参数“Flags”中使用navOpenInNewTab(0x0800)。
请注意,您必须传递VT_I4类型的变体。
Doc:Navigate2 method
如果你想获得新Tab的IWebBrowser2接口指针,就像你做的那样去做第一个。有很多方法可供选择。
如果您通过某种枚举获得所有IWebBrowser2,则可以通过检索URL(IHTMLDocument2 :: get_URL)来检测新的
如果URL条件不够,您可以缓存托管IWebBroser2对象的窗口列表(IberBrowser2 ==&gt; IServiceProvider的QueryInterface,IServiceProvider ==&gt; IOleWindow的QueryService,IOleWindow ==&gt; GetWindow)< / p>
那些窗口有一个“TabWindowClass”(使用Internet Explorer 9 ...你的里程可能会有所不同)。如果您构建一个新的IWebBrowser2列表,由新选项卡窗口托管的列表是新选项卡: - )