请大高手:创建IE导航到要的网页,如何得知网页装载完成?(msdn是针对浏览器控件的说明)

j19169123 2011-01-05 09:58:02
创建IE:
CoCreateInstance(CLSID_InternetExplorer, NULL, CLSCTX_SERVER, IID_IWebBrowser2, (LPVOID*)&pWebBrowser);
接着导航到要的网页:
pWebBrowser->Navigate2(&vaURL,COleVariant((long)0,VT_I4),COleVariant((LPCTSTR)NULL,VT_BSTR),COleSafeArray(),COleVariant((LPCTSTR)NULL,VT_BSTR));
如何得知网页装载完成?(但msdn是针对浏览器控件的说明,可我的没有用到浏览器控件,不知怎么办,请高手指点迷经??)msdn的说明如下:
1。Define the OnDocumentComplete method in the header file for you CView- derived class:
afx_msg void OnDocumentComplete(LPDISPATCH lpDisp,VARIANT FAR* URL);
2。Declare the event sink in the same header file:
DECLARE_EVENTSINK_MAP()
3。In the implementation file (.cpp) for your CView-derived class, implement the event sink map:
BEGIN_EVENTSINK_MAP(CYourView, CView)
ON_EVENT(CWBTstView, ID_WEB_BROWSE, 259 /* DocumentComplete */,
OnDocumentComplete, VTS_DISPATCH VTS_PVARIANT)
END_EVENTSINK_MAP()
4。Implement the OnDocumentComplete method:
void CWBTstView::OnDocumentComplete(LPDISPATCH lpDisp,VARIANT FAR* URL)
{
IUnknown* pUnk;
LPDISPATCH lpWBDisp;
HRESULT hr;
pUnk = m_webBrowser.GetControlUnknown();
ASSERT(pUnk);
hr = pUnk->QueryInterface(IID_IDispatch, (void**)&lpWBDisp);
ASSERT(SUCCEEDED(hr));
if (lpDisp == lpWBDisp )
{
// Top-level Window object, so document has been loaded
TRACE("Web document is finished downloading\n");
}
lpWBDisp->Release();
pUnk->Release();
}

...全文
136 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
小楫轻舟 2011-01-05
  • 打赏
  • 举报
回复
就是OnDocumentComplete了,
你可以数下触发几次了,一般是多次,
因为是按触发OnDocumentComplete事件的框架frames数来算的
最后一次触发后认为是网页都加载完也
具体可看下我的一篇blog
http://blog.csdn.net/LightBoat09/archive/2010/05/18/5604635.aspx
healer_kx 2011-01-05
  • 打赏
  • 举报
回复
可以关注一下onload事件了。
内容概要:本文详细复现并实现了“电动汽车聚合可行域的内-外结合近似方法”的Matlab代码,旨在通过对大量电动汽车充放电能力的建模,构建其聚合可行域的内近似与外近似集合,从而科学刻画电动汽车集群作为柔性资源参与电网调度的整体潜力。研究基于多面体理论,系统阐述了电动汽车集群聚合建模的技术流程,并将其集成至包含分布式电源、储能系统及常规负荷的微电网经济调度模型中,验证该方法在提升系统运行经济性、灵活性与可再生能源消纳能力方面的有效性。文中不仅提供了完整的数学模型推导与优化框架,还深入分析了模型特性及其在虚拟电厂、车网互动(V2G)等新兴电力系统场景中的应用前景。; 适合人群:具备电力系统分析基础和Matlab编程能力的研究生、科研人员,以及从事新能源并网、智能电网、需求响应和能源互联网相关领域的工程师与技术人员。; 使用场景及目标:①掌握基于多面体理论的电动汽车集群聚合建模方法,理解其作为“虚拟电池”参与系统调度的内在机理;②学习如何将海量异质个体的时空灵活性聚合为可操作的可行域,并应用于微电网或主动配电网的优化调度问题;③为开展车网互动(V2G)、分布式资源聚合、鲁棒调度、虚拟电厂等前沿课题的研究提供坚实的模型基础与可复用的代码参考。; 阅读建议:建议读者结合文中提供的Matlab代码,逐模块运行与调试,重点关注电动汽车个体可行域的构建、多面体聚合的内近似算法实现以及微电网调度模型中约束条件的耦合方式,鼓励通过修改参数、增删设备类型或扩展为多时段模型等方式进行二次开发,以深化对聚合机理与优化逻辑的理解。

65,213

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧