○问===================...... 问======================================== 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; } |
|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )
GMT+8, 2024-9-30 07:21 , Processed in 0.133071 second(s), 12 queries , Gzip On, MemCache On.
Powered by Discuz! X3.5
© 2001-2023 Discuz! Team.