C#通过COM组件操作IE浏览器(二):使用IHTMLDocument3完成登录
第一章介绍了如何打开网站,这一章介绍一下使用IHTMLDocument3完成登录博客园,以下为代码:
SHDocVw.InternetExplorer oBrowser = new SHDocVw.InternetExplorer();
object objFlags = 2;
object objTargetFrameName = "_self";
object objPostData = "";
object objHeaders = "";
oBrowser.Visible = true;
oBrowser.Navigate("https://passport.cnblogs.com/user/signin", ref objFlags, ref objTargetFrameName, ref objPostData, ref objHeaders);
while (true)
{
Thread.Sleep(1000);
if (oBrowser.ReadyState == SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE)
break;
}
IHTMLDocument3 doc3 = (IHTMLDocument3)oBrowser.Document;
IHTMLInputElement txtUserName = (IHTMLInputElement)doc3.getElementById("input1");
txtUserName.value = "你的用户名";
IHTMLInputElement txtPassWord = (IHTMLInputElement)doc3.getElementById("input2");
txtPassWord.value = "你的密码";
doc3.getElementById("signin").click();
使用以上代码就成功登录到博客园了,下面整理一下IHTMLDocument3以及相关的一些方法和属性:
| IHTMLDocument3 方法 | 说明 |
| attachEvent |
从IE11开始,使用addEventListener。将指定的函数绑定到一个事件,以便每当事件在对象上触发时,该函数被调用。 |
| createDocumentFragment | 创建一个新文档并返回一个指向新创建的文档的指针。 |
| createTextNode |
从指定的值创建一个文本字符串。 |
| detachEvent | 从事件中取消绑定指定的功能,以使该功能在事件触发时停止接收通知。 |
| getElementById | 返回对具有指定值id属性的第一个对象的引用。 |
| getElementsByName | 根据name属性的值获取对象集合。 |
| getElementsByTagName | 根据指定的元素名称检索对象的集合。 |
| recalc | 此元素已过时,不再使用。重新计算当前文档中的所有动态属性。 |
| releaseCapture |
从当前文档中的对象中删除鼠标捕获。 |
| IHTMLDocument3属性与事件 | 说明 |
| baseUrl | |
| dir | 设置或检索指示对象的读取顺序的值。 |
| documentElement | 获取对文档根节点的引用。 |
| enableDownload | 设置启用下载 |
| inheritStyleSheets | 暂未说明 |
| onbeforeeditfocus | 设置焦点之前 |
| oncellchange | 当数据来源发生变化时 |
| oncontextmenu | 当按下鼠标右键出现菜单或通过键盘触发页面菜单时 |
| onpropertychange | 改变属性时 |
| onrowsdelete | 当前数据记录被删除时 |
| onrowsinserted | 当前数据源将要插入新数据时 |
| uniqueID | 检索对象的自动生成的唯一标识符。 |
| onstop | 停止或离开时 |
| ondatasetchanged | 数据源发生变化时 |
| ondatasetcomplete | 当数据接收完成时 |
| ondataavailable | 当数据源的全部有效数据读取完毕时 |
这一章介绍了IHTMLDocument3,并且使用IHTMLDocument3完成了登录,下一章介绍IHTMLDocument2以及用法.
C#通过COM组件操作IE浏览器(二):使用IHTMLDocument3完成登录的更多相关文章
- C#通过COM组件操作IE浏览器(一):打开浏览器跳转到指定网站
简介Internet Explorer对象模型 1.属性 属性 类型 描述 Application Object 返回对Internet Explorer对象的引用. Busy Boolean 返回一 ...
- C#通过COM组件操作IE浏览器(四):实用代码总结
//执行js方法 IHTMLWindow2 win = oDocument2.parentWindow; win.execScript("functiona();", " ...
- C#通过COM组件操作IE浏览器(三):了解IHTMLDocument2
IHTMLDocument2方法 说明 write 写入 writeln 写入并换行 open 打开一个流,以收集 document.write 或 document.writeln 的输出 clos ...
- DocX开源WORD操作组件的学习系列二
DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...
- C# 操作IE浏览器
最近的一个B/S系统中,用到了指模录入,当用户按了手指摸之后,要在IE浏览器的一个文本框上显示用户的姓名.由于要监控指模机的输入,因此客户端需要装一个.net控制台程序,通过此控制台程序监控指模机.这 ...
- 【Android】安卓四大组件之Activity(二)
[Android]安卓四大组件之Activity(二) 前言 在这篇文章之前,我已经写过了一篇有关Activity的内容,是关于activity之间的页面跳转和数据传递,而这篇文章着重强调的是Acti ...
- AngularJs的UI组件ui-Bootstrap分享(二)——Collapse
Collapse折叠控件使用uib-collapse指令 <!DOCTYPE html> <html ng-app="ui.bootstrap.demo" xml ...
- laydate时间组件在火狐浏览器下有多时间输入框时只能给第一个输入框赋值的问题
遇到的问题: laydate时间组件在火狐浏览器下有多时间输入框时只能给第一个输入框赋值的问题(safari下也有同样问题); 解决办法: 给laydate绑定id; 解决前代码: <input ...
- Asp.Net调用Office组件操作时的DCOM配置 (转)
Asp.Net调用Office组件操作时的DCOM配置 http://blog.csdn.net/gz775/article/details/6447758 在项目中将数据导出为Excel格式时出现“ ...
随机推荐
- 自定义圆形ImageView(解决Bitmap bitmap = ((BitmapDrawable) drawable).getBitmap();报错问题)
package com.bottle.bottlelilibrary.view; import android.content.Context; import android.graphics.Bit ...
- Bar 柱状图
1.生成基本图形 向上向下分别生成12个数据,X为 0 到 11 的整数 ,Y是相应的均匀分布的随机数据. 使用的函数是plt.bar,参数为X和Y: import matplotlib.pyplot ...
- 201771010134杨其菊《面向对象程序设计(java)》第十六周学习总结
第十六周学习总结 第一部分:理论知识 1. 程序是一段静态的代码,它是应用程序执行的蓝本.进程是程序的一次动态执行,它对应了从代码加载.执行至执行完毕的一个完整过程.操作系统为每个进程分配一段独立的内 ...
- QTcpSocket 相关知识总结
1. 连接服务器 m_tcpSocket->connectToHost("127.0.0.1", 9877); connected = m_tcpSocket->wa ...
- sql server 临时库文件太大 迁移tempdb数据库
由于装SQL Server时默认装在系统盘,使用一段时间后,tempdb数据库占了68G,导致整个C盘爆满,彻底解决办法就是迁移tempdb物理文件,移至其他大空间磁盘上. 将 tempdb 从其在磁 ...
- mysql 主从库同步
#主库修改my.ini [mysqld] server log-bin=mysql-bin binlog-do-db=demo #从库修改my.ini [mysqld] server replicat ...
- 本地iis新建站点步骤
例如:1.在C:\Windows\System32\drivers\etc\hosts下添加地址 2.在下面IIS加上名称与webUI的地址
- Linux开发黑客
参考网站:http://blog.chinaunix.net/uid/20543672/abstract/1.html tekkamanninja
- Maven学习 六 pom.xml文件
java jar包的搜索网址:http://mvnrepository.com/ pom作为项目对象模型.通过xml表示maven项目,使用pom.xml来实现.主要描述了项目:包括配置文件:开发者需 ...
- 《MySQL必知必会》官方提供的数据库和表
数据用于配合<MySQL必知必会>(MySQL Crash Course)这本书使用,配套SQL文件也可在Ben Forta网站下载. Ben Forta网址:http://forta.c ...