szumaky1 2015-08-06 00:35
浏览 2322

通过SHDocVw获取网页IFRAME的问题

大家好,我通过SHDocVw想取得网页中的iframe的内容并向其中的表单赋值。在IE8中,网页是可以正常显示的,但通过代码取的IE并取iframe的内容时,发现iframe不是正常要显示的内容,而是跳转到提示不支持iframe的页面了。

在同事的电脑上测试了一下,3台IE8均不行,1台IE11可以正常取到网页内容。

这里我想问下为什么会这样。以及如果此路不通,有没有别的方式取网页的iframe并赋值的方法。

如果还需要其他的问题资源请回复我再提供。

C#初学者,实在找不到问题原因,请不吝赐教,非常感谢。

以下是取iframe的代码

            IHTMLDocument2 doc2 = GetIHTMLDocument2();
            object value = doc2.GetType().GetProperty("title").GetValue(doc2, null);

            object jj;
            MessageBox.Show(value.ToString() + "拥有IFRAME数量:" + doc2.parentWindow.frames.length.ToString());
            for (int i = 0; i < doc2.parentWindow.frames.length; i++) {
                if (i == 2) {
                    jj = i;
                    Thread.Sleep(5000);
                    HTMLWindow2Class frame = doc2.parentWindow.frames.item(ref jj) as HTMLWindow2Class;
                    StaticElem.println("\r\n第" + i + "层@@@@@\r\n" + frame.document.body.innerHTML);
                }
            }

以下是错误返回的网页源码片段:

 <TABLE style="PADDING-LEFT: 5px; PADDING-RIGHT: 20px" id=Table4 border=0 cellSpacing=0 cellPadding=0 width="100%" height="100%">
<TBODY id=workPanel>
<TR class=pane_hide>
<TD><IFRAME onreadystatechange=stateListener(this) height="100%" src="/EnterpriseIndexAction.do" frameBorder=0 width="100%">对不起,您的浏览器不支持IFRAME!</IFRAME></TD></TR>
<TR style="HEIGHT: 0px" class=pane_hide valign="bottom">
<TD noWrap></TD></TR>
<TR class=pane>
<TD><IFRAME onreadystatechange=stateListener(this) height="100%" src="/CwbbTaxAction.do?activity=getData&amp;ssq=YD&amp;reportname=SB_CW_LRB_2005" frameBorder=0 width="100%">对不起,您的浏览器不支持IFRAME!</IFRAME></TD></TR>
<TR style="HEIGHT: 0px" class=pane valign="bottom">
<TD noWrap></TD></TR></TBODY></TABLE>
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 arduino控制ps2手柄一直报错
    • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
    • ¥85 maple软件,solve求反函数,出现rootof怎么办?
    • ¥15 求chat4.0解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
    • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
    • ¥50 树莓派安卓APK系统签名
    • ¥65 汇编语言除法溢出问题
    • ¥15 Visual Studio问题
    • ¥20 求一个html代码,有偿
    • ¥100 关于使用MATLAB中copularnd函数的问题