加速浏览器控件的创建
来源:互联网 发布:淘宝红包口令 编辑:程序博客网 时间:2024/06/12 22:05
我们知道,应用程序中浏览器控件的第一个实例的创建过程比其他的实例创建过程慢得多。为了加速浏览器控件的创建,在应用程序的开始,可以创建一个隐藏的浏览器对象,使得应用程序中随时都至少有一个浏览器控件的实例
在主窗口类中声明 CComPtr<IOleObject> m_spOleObjectPreloadBrowser;
在主窗口类的初始化函数中
HRESULT hr = CoCreateInstance(CLSID_WebBrowser, NULL, CLSCTX_INPROC,
IID_IOleObject, (void**)&m_spOleObjectPreloadBrowser);
if (FAILED(hr)){
TRACE(_T("Can not create WebBrowser/r/n"));
return FALSE;
}
CComQIPtr<IWebBrowser2> pWebBrowser(m_spOleObjectPreloadBrowser);
if(pWebBrowser){
CComBSTR bstrURL = _T("about:blank");
COleSafeArray vPostData;
pWebBrowser->Navigate(bstrURL,
COleVariant((long) 0, VT_I4),
COleVariant(_T(""), VT_BSTR),
vPostData,
COleVariant(_T(""), VT_BSTR));
}
然后在退出时释放
m_spOleObjectPreloadBrowser=NULL;
这样可以大大加快程序中浏览器控件的创建速度。因为IE的动态库都是共享的,所以除了第一个示例之外,多开一个实例多占用的内存并不大。
QQ的广告窗口明显就没有用这个方法来加速……打开的时候慢得要死……
- 加速浏览器控件的创建
- 利用WebBrowser控件创建自己的浏览器
- 利用WebBrowser控件创建自己的浏览器
- 利用WebBrowser控件创建自己的浏览器
- 利用WebBrowser控件创建自己的浏览器
- 利用WebBrowser控件创建自己的浏览器
- 使用MFC的CHtmlView创建浏览器控件
- 加速浏览器的加载速度
- 浏览器加速!
- 用控件创建WEB浏览器
- VB动态创建浏览器控件
- C++利用WebBrowser控件创建自己的浏览器
- 巧用搜狗浏览器的代理服务器加速上网
- linux中加速firefox浏览器的方法
- 网页游戏加速浏览器的原理是什么?
- 开启浏览器的GPU加速功能
- 巧用搜狗浏览器的代理服务器加速上网
- 卸载浏览器的控件
- 零打碎敲学Android(二)—做个拼图游戏吧
- 一个简单的死锁例子
- Group Items in Delphi's TListView Control
- [转]利用SVN更新网站
- C#教学第19讲字符1(学习笔记)
- 加速浏览器控件的创建
- 奇数阶魔方阵
- 应CSDN之邀参加SD2.0大会
- 协程与微线程——概念篇
- Print Documents From Delphi - Print PDF, DOC, XLS, HTML, RTF, DOCX, TXT
- LINK : fatal error LNK1104: 无法打开文件“C:/XXX.obj”
- 泩活 ㄚi 成卟変
- row.rowKeyStr
- 在载入页面前呼叫 DataControl Operations