none
【请教】怎样使用IHTMLDocument4的createDocumentFromUrl方法,将指定Url网页中的内容,载入IHTMLDocument2 RRS feed

  • 问题

  • 各位前辈,最近在学习分析网页的方法,期间遇到一个问题:不知道该如何使用IHTMLDocument4的createDocumentFromUrl方法,将指定Url网页中的内容,载入IHTMLDocument2。我尝试的代码如下

    1 CoInitialize(NULL);
    2 CComQIPtr <IHTMLDocument2> pDocument2;
    3 CComQIPtr <IHTMLDocument4> pDocument4;
    4 HRESULT hr = CoCreateInstance(CLSID_HTMLDocument, NULL, CLSCTX_INPROC_SERVER, IID_IHTMLDocument4, (void**)&pDocument4);
    5 hr = CoCreateInstance(CLSID_HTMLDocument, NULL, CLSCTX_INPROC_SERVER, IID_IHTMLDocument2, (void**)&pDocument2);
    6 pDocument4->createDocumentFromUrl(_T("http://cn.msn.com"),_T("print"), &pDocument2);
    7 Sleep(1000);
    8 CComQIPtr <IHTMLElementCollection> pAll;
    9 pDocument2->get_all(&pAll);

    若删除第5步,执行至第9步报错,因为pDocument2看上去在第6步并没有赋值,一直是NULL;

    若不删除第5步,执行至第6步就会报错

    若在第6步执行前加入代码,将<html></html>通过IHTMLDocument2的write方法写入pDocument2,报错也类似。

    在网上查了半天,信息很少,实在找不出头绪,请各位前辈帮忙,非常感谢!


    • 已编辑 神山 2015年11月19日 13:15
    2015年11月19日 9:25

全部回复