小弟的webbrowser浏览的是一个xml+xsl的页面,我用webbrowser的document得到
的源文件是xsl转换过后的html文件,
因为浏览的内容在线只能浏览一次,而我想得到的是xml,这样我就可以用msxml来
解析了,
我在webbrowser上右键有个“查看源文件”是可以看到完整的xml文件的,不知哪位
大侠可以帮帮我,
真的是郁闷好久了[:(]

解决方案 »

  1.   

    通过HTTP组件直接下载那个地址,其结果一定是XML文件
    如IdHTTP等
      

  2.   

    很容易的,在MSDN上面可以查到的WebBrowser1.OleObject.Document.XMLDocument.documentElement.XML
      

  3.   

    var
        Doc: IXMLDOMDocument;
    begin
      Doc := CreateOleObject('Microsoft.XMLDOM') as IXMLDomDocument;
      Doc.load(webbrowser1.OleObject.Documenet.XMLDocument.documentElement.XML);
      ......
    end;
    halfdream兄,我在运行到Doc.load的时候,提示 
                  Method 'Document' not supported by automation object你能再帮帮忙吗?我这里没有msdn,或者你把msdn抄一点给我,好吗?拜托摆脱
      

  4.   

    我是在网上搜索的,
    其实它的这个接口应该比较好理解。。
    webbrowser1.OleObject.Documenet.XMLDocument到这儿,已经是提供了一个XMLDOM接口。你的程序调试的时候,var
        Doc: IXMLDOMDocument;
        s:string;
    begin
      s:=webbrowser1.OleObject.Documenet.XMLDocument.documentElement.XML;
      ShowMessage(s);//先试试取到没有。。
      Doc := CreateOleObject('Microsoft.XMLDOM') as IXMLDomDocument;
    //  Doc.load(s);  你应该是错在这儿,LOAD方法是装入文件吧,参数是文件名。
      Doc.loadxml(s);  ......
    end;
      

  5.   

    必须WEBBROWSER先打开一个文档,
    webbrowser1.OleObject.Documenet才会引用到一个自动化对象。
      

  6.   

    halfdream兄:
    我在
    s:=webbrowser1.OleObject.Documenet.XMLDocument.documentElement.XML;的时候又报
             Method 'Document' not supported by automation object
    了,我的webbrowser1已经navigate一个xml+xsl文件了。小弟delphi水平实在不行,大侠再帮忙看看
      

  7.   

    我用的是delphi5是不是有问题?
      

  8.   

    呵呵,,不好意思,程序应该这样写。尽管看上去差不多。var
      s:string;
      v:variant;
    begin
      v:=webbrowser1.OleObject.Document;
      s:=v.XMLDocument.documentElement.XML;
      ShowMessage(s);...
      

  9.   

    厉害厉害,halfdream兄,已经解决了