原文出处 :http://blog.csdn.net/nocky/article/details/6056802

源码出处:http://www.codecentrix.com/blog/wnd2doc_csharp/GetDocumentFromWindowCsharp.zip

原作者的博客:http://codecentrix.blogspot.com/

现整理:

经过一天的折腾发现最后还是IE策略给限制了跨域访问,之前使用编程的办法和植入Script代码的办法,都是拒绝访问的。

不过现在用了下边的方法就可以解决了,代码也不多。Dll和代码均在工程文件里

//注意,需要手动引用 Interop.SHDocVw.dll,和.net 自带的Microsoft.mshtml

下边是实例:

using mshtml;

//需要调用的Frame

IHTMLWindow2 win = (IHTMLWindow2)webBrowser1.Document.Window.Frames["frame_some"].DomWindow;
//获得Iframe doc
IHTMLDocument2 doc = CodecentrixSample.CrossFrameIE.GetDocumentFromWindow(win);
//body的信息
MessageBox.Show(doc.body.innerHTML);

//填充input
mshtml.IHTMLElementCollection inputs;
inputs = (mshtml.IHTMLElementCollection)doc.all.tags("INPUT");
mshtml.IHTMLElement element = (mshtml.IHTMLElement)inputs.item("txt_msg", 0);
mshtml.IHTMLInputElement inputElement = (mshtml.IHTMLInputElement)element;
inputElement.value = "填充信息";

WebBrowser控件跨域访问页面内容相关推荐

  1. webbrowser控件 有数据 但页面空白_如何在Excel中实现可以切换不同数据系列的滚珠图?...

    ▲更多精彩内容,请点击上方Excel小铲子▲ 操作系统版本 Windows 10 64位 Excel版本 Microsoft Excel 2016 64位 案例文档下载 链接:https://pan. ...

  2. 英文操作系统下WebBrowser控件无法显示本地页面的解决方法

    解决方法有两种: 1.将程序安装在英文路径即页面全路径中不含中文. 2.修改系统区域设置,改为中国,具体如下: Control Panel->Region and Language Format ...

  3. C#控件跨线程内容更新

    在使用C#开发winform应用程序时,经常会碰到对控件跨线程访问造成的异常.在winform中UI线程和工作线程是分开的,但在实际使用中经常会需要在工作线程更新UI线程中创建的控件. 方法1:禁用跨 ...

  4. 解决WebBrowser控件会导致应用程序占用内存居高不下问题

    WebBrowser 是一个 .NET 控件类,在 .NET Framework 2.0 版中新增.WebBrowser 类使用户可以在窗体中导航网页,下面我们来看在开发中碰到WebBrowser控件 ...

  5. phonegap jQuerymobile 跨域访问

    1.phonegap不存在跨域访问问题,原因是phonegap使用的是 file:// 协议,Phonegap wiki里面说: "The cross-domain security pol ...

  6. VB webbrowser 控件的应用(跨域 内嵌网页元素的访问)

    自动登录财付通,难点在于会出现验证码,并且验证码页是在iframe元素下的,出于各种安全考虑,webbrowser控件不提供这种访问机制!当然,第一想到的是将这个网页拿出来,可是输入完毕验证码后,点击 ...

  7. Silverlight 2 跨域访问控件与WebService的资料整理

    跨域访问控件: In other words, a page retrieved from somehost containing a Silverlight object tag with sour ...

  8. 如何跨服务器访问html 页面,html页面如何跨域访问另一页面内容,并将部分内容呈现出来?...

    html代码: 简介 我需要将接口界面的部分内容,显示在id为p4的块中,我自己这边服务器请求是跨域访问,如何操作? jquery ajax来完成,load()方法不能跨域,所以不能用:我自己的代码如 ...

  9. html的页面怎样直接跨域访问,【HTML】iframe跨域访问问题

    概述 本地同一浏览器访问本地HTML文件和访问服务器端HTML文件,本地Iframe没有自适应高度,而服务器端的Ifrane自适应了高度. 1.问题重现: Chrome 版本 41.0.2272.10 ...

最新文章

  1. 语言都是相通的,学好一门语言,再学第二门语言就很简单,记录一下我复习c语言的过程。...
  2. [MySQL]Every derived table must have its own alias
  3. 从春晚说起:总有一种无耻让我们泪流满面
  4. 中国最懂自动驾驶量产公司秀肌肉:自动驾驶算力怪兽、百亿参数云端超大模型、百万公里路测里程...
  5. 操作电脑小心“伤”手
  6. 12行代码AC——UVa 151 - Power Crisis(约瑟夫环)
  7. Java高并发之锁优化
  8. apache rewrite机制
  9. Oracle Database 11g 数据库普通用户登录时提示 ORA-28002: the password will expire within 5 days
  10. django在window和linux,从windows导入Django项目到linux时出错
  11. python urlopen错误_urlopen()出错
  12. Atitit 价值观与理念总结 Diy自力更生尽可能 提高独立性 减少依赖 大而全优先于小而美 适度分权防止集权导致大决策失误 方式多种多样 综合是王道 简单快速优先 努力实现人们喜闻乐见的服务 信
  13. ViewStub 简介
  14. Editplus从下载到使用
  15. 关于LANP的相关常识题
  16. 大型企业开发的ERP系统主要包括几个模块
  17. Python 实现局域网视频聊天工具
  18. 在Java语言的if语句是什么表达式,if语句中的条件表达式中只能使用
  19. casual Convolution 和 dilated Convolution
  20. Give up sending metadata request since no node is available

热门文章

  1. OpenCV霍夫直线houghlines点集的实例(附完整代码)
  2. C++使用位操作将数字乘以7的算法实现(附完整源码)
  3. OpenGL 加载模型Model
  4. C++用递归实现链表的逆转(附完整源码)
  5. C++多态案例二-制作饮品
  6. C++构造及析构执行顺序
  7. 匿名函数,结合闭包的写法,js对象的案例
  8. 3Linux内存映射,mmap()函数
  9. 一个base.css
  10. 百米路由器2登陆地址_女孩子也要会的无线路由器连接技巧,再也不求男生了...