请问关于多框架网页获取文档接口为空
请教关于多框架网页获取文档接口为空
我处理一个框架网页时,循环框架获取每个框架文档的接口是,我的代码调试为空,无法进行后续处理,请问为什么?我代码如下。
求各位来帮帮忙。在线等。
------解决方案--------------------
恭喜楼主,把你解决的源码分享一下啊
我处理一个框架网页时,循环框架获取每个框架文档的接口是,我的代码调试为空,无法进行后续处理,请问为什么?我代码如下。
::CoInitialize(NULL); //初始化COM
HRESULT hr;
CComQIPtr <IHTMLDocument2> spDoc =(IHTMLDocument2*)GetHtmlDocument();//获取HTML文档
CComPtr<IHTMLFramesCollection2> spFramesCollection2;
spDoc->get_frames(&spFramesCollection2); //取得框架frame的集合
long nFrameCount=0; //取得子框架个数
hr=spFramesCollection2->get_length(&nFrameCount);
if (FAILED(hr)|| 0==nFrameCount) return;
for(long i=0; i<nFrameCount; i++)
{
CComVariant vDispWin2; //取得子框架的自动化接口
hr = spFramesCollection2->item(&CComVariant(i), &vDispWin2);
if (FAILED(hr)) continue;
CComQIPtr<IHTMLWindow2>spWin2 = vDispWin2.pdispVal;
if (!spWin2) return; //取得子框架的 IHTMLWindow2 接口
CComQIPtr <IHTMLDocument2> spDoc2;
spWin2->get_document(&spDoc2); //取得子框架的 IHTMLDocument2 接口
//接口指针获取之后都得进行判断是否为空
if(!spDoc2)
return;
//获取JS脚本 多个框架出问题
CComPtr<IHTMLElementCollection> spScripts;
//接口指针获取之后都得进行判断是否为空
hr=spDoc2->get_scripts(&spScripts);
if(!spScripts)
return;
求各位来帮帮忙。在线等。
------解决方案--------------------
恭喜楼主,把你解决的源码分享一下啊