想写一个桌面程序,用C#。
程序运行后,会用IE打开指定的网页,并自动登录网站,再根据需要进行一些操作。
关键是不知道怎么控制IE浏览器,请大家指点一下。
相关内容如下:
C#控制IE浏览器
引入 C:\WINDOWS\System32\mshtml.tlb、Interop.SHDocVw.dll
/// <summary>
/// 返回指定Url的IE窗口下的 IHTMLDocument2 对象。
/// </summary>
/// <returns>IHTMLDocument2</returns>
public static IHTMLDocument2 GetIHTMLDocument2ByUrl(string url)
{
SHDocVw.ShellWindows shellWindows = new SHDocVw.ShellWindowsClass();
foreach (SHDocVw.InternetExplorer ie in shellWindows)
{
string filename = System.IO.Path.GetFileNameWithoutExtension(ie.FullName).ToLower();
if (filename.Equals(“iexplore“) && ie.LocationURL == url)
{
return ie.Document as IHTMLDocument2;
}
}
}
通过 GetIHTMLDocument2ByUrl 方法可以获取已打开的IE窗口中指写地址的窗口中的 IHTMLDocument2 对象。
利用这个对象,就可以进行相关操作。
1.填写表单
IHTMLDocument2 iHTMLDocument2 = GetIHTMLDocument2ByUrl(“http://www.163.com“);
IHTMLInputElement input = (IHTMLInputElement)iHTMLDocument2.all.item(“Username“, 0); // 获取指定名称的对象
input.value = “Xiao“; // 赋值
2.点击按钮
IHTMLDocument2 iHTMLDocument2 = GetIHTMLDocument2ByUrl(“http://www.163.com“);
HTMLDocumentClass obj = (HTMLDocumentClass)iHTMLDocument2;
IHTMLElement iHTMLElement = null;
IHTMLElementCollection c = obj.getElementsByTagName(“input“);
foreach (IHTMLElement e in c)
{
if (e.outerHTML.IndexOf(“登录“) != -1)
{
iHTMLElement = e;
break;
}
}
if (iHTMLElement != null)
{
iHTMLElement.click(); // 点击登录按钮
}
更多功能可以参考 IHTMLDocument2 对象。

c# 控制IE浏览器相关推荐

  1. c#控制IE浏览器自动点击等事件WebBrowser,mshtml.IHTMLDocument2

    c#控制IE浏览器自动点击等事件WebBrowser,mshtml.IHTMLDocument2 原文:c#控制IE浏览器自动点击等事件WebBrowser,mshtml.IHTMLDocument2 ...

  2. chrome 窗体高度_控制Chrome浏览器窗口最小宽度和高度

    控制 Chrome 浏览器窗口最小宽度和高度 (原创) 最近通过 Chrome 浏览器做 UI , Golang 作为主体语言的方式做了一个本地信息搜索的小工具, 核心的两个表列是捆绑对齐的,但在浏览 ...

  3. Python用 selenium 模块控制Firefox浏览器

    Python用 selenium 模块控制Firefox浏览器 需要的东西: Firefox浏览器下载地址: http://getfirefox.com/ selenium包: https://pyp ...

  4. selenium控制tor浏览器

    (技术纯属自己瞎研究,其他啥事与我无关!)* tor简介 tor是个浏览器,内核是火狐的但是和普通又不太一样,最重要的功能是tor可以实现ip的多重转换和动态(有啥用我就不说明了).还有个隐藏又出名的 ...

  5. VB完全控制IE浏览器,操作ie对象,响应ie事件

    IE浏览器完全控制   ,相信现在绝大多数计算机上使用的是IE浏览器.如何通过编程控制IE的操作呢,本文将一步步介绍如何通过VB  调用IE的对象库来对IE进行控制.    本文使用的编程工具是VB6 ...

  6. 安卓手机上 js不能控制微信浏览器强制刷新页面

    2019独角兽企业重金招聘Python工程师标准>>> 解决方法: 使用window.location.href=window.location.href+随机数 代替 window ...

  7. CSS控制所有浏览器水平居中和控制链接不换行的效果

    CSS部分 /*页尾开始*/ #footer{  clear:both;  height:auto;  background:rgb(38,88,87); } #footer *{  color:rg ...

  8. Web笔记-通过版本号控制客户端浏览器中的缓存

    这里举个例子: 通过Python管理静态资源.但有时候,js或者css更新了,浏览器不知道,还使用缓存的情况. 如下所示: 通过在url中带个?这种方式,使得浏览器去获取新的资源 看下根请求下相关链接 ...

  9. python设置端口控制ie浏览器_[Python爬虫] 之二:Selenium 调用IEDriverServer打开IE浏览器安装配置...

    无论是selenium2(WebDriver)还是selenium2Library,如果想要调用ie浏览器,均需以下步骤. 下载IEDriverServer.进入索引页,首先选择版本号,IEDrive ...

最新文章

  1. 从0搭建一个Springboot+vue前后端分离项目(二)使用idea进行页面搭建+页面搭建
  2. Python解释器工作原理与jit技术
  3. numpy 归一化_NumPy 数据归一化、可视化
  4. #自定义多级菜单_怎么搞定排版中的多级列表问题?
  5. Android开发笔记(三十八)列表类视图
  6. Tomcat漏洞修复方法【补丁下载及安装详细流程】
  7. 【异或】LeetCode 137. Single Number II
  8. SVN Attempted to lock an already-locked dir异常解决方法
  9. Effective C++读书笔记05
  10. 2016年人人网笔试题
  11. 苹果怎么信任企业级开发者_苹果企业签名是什么意思?
  12. Aircrack-ng破解无线WIFI密码
  13. 利用tp5中的图像处理功能完成海报的图片合成
  14. 思科模拟器启用CHAP协议
  15. 制作放射冲击星空粒子海报图片的PS教程
  16. Excel:批量将某字符替换为“换行符”
  17. 0413-0417数字资产每周数据速览 | TokenInsight
  18. 痛快 SpringBoot终于禁掉了循环依赖
  19. 揭秘全球首个火星车数字人背后的百度数字人技术
  20. 2021-2027全球与中国电网级固定电池存储市场现状及未来发展趋势

热门文章

  1. C语言求在算术级数中找到缺少的数字(附完整源码)
  2. C++cycle sort循环排序的实现算法(附完整源码)
  3. C++rat maze老鼠迷宫算法(附完整源码)
  4. QT的QDesignerFormWindowInterface类的使用
  5. 计算机学院的行话,只有你和你同学知道的“专业行话”
  6. python爬取虾米音乐_Python爬取620首虾米歌曲,揭秘五月天为什么狂吸粉?!
  7. c语言程序设计第四版十二五,C语言程序设计/普通高等教育十二五规划教材
  8. 5,6,7_InfluxDB数据保留策略,InfluxDB的关键概念,带有时区进行查询示例
  9. 03_数据的特征抽取,sklearn特征抽取API,字典特征抽取DictVectorizer,文本特征抽取CountVectorizer,TF-IDF(TfidfVectorizer),详细案例
  10. Android PDU