启动IE时自动显示工具条

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

问========================================

eagleboost,您好!

在csdn上看到你以前写的关于IE编程方面的文章,看得出来你对这方面非常熟悉。我现在有个问题想请教一下你,就是我已经做了一个类似google工具条的东西,已经注册了,但要自己去右键菜单勾上才能显示出来。我想让它一注册,ie就默认将其显示出来,不知道要修改注册表什么地方? 麻烦你解答一下,非常感谢!

答========================================

你的问题比较常见。

标准的,也是最好的办法是在你的工具条之外再实现一个Browser Helper Object(BHO),比如下面的CShowBarObj,并在IObjectWithSite::SetSite方法中调用IWebBrowser2的ShowBrowserBar函数来显示你的工具条。VC中的例子如下:

STDMETHODIMP CShowBarObj::SetSite(IUnknown *pUnkSite)

{

if (NULL != pUnkSite)

{

IWebBrowser2 *pBrowser = NULL;

// Ensure that our site is an browser window

HRESULT hr = pUnkSite->QueryInterface(IID_IWebBrowser2, (void **) &pBrowser);

if (SUCCEEDED(hr))

{

// Display the band object (the Search bar in this case)

VARIANT vtBandGUID, vtShow;

vtBandGUID.vt = VT_BSTR;

//把这里的CLSID换成你的工具条CLSID

vtBandGUID.bstrVal = SysAllocString(OLESTR("{30D02401-6A81-11D0-8274-00C04FD5AE38}"));

vtShow.vt = VT_BOOL;

vtShow.boolVal = true;

pBrowser->ShowBrowserBar(&vtBandGUID, &vtShow, 0);

SysFreeString(vtBandGUID.bstrVal);

pBrowser->Release();

}

}

return S_OK;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航