IE 浏览器完全控制,相信现在绝大多数计算机上使用的是 IE 浏览器。如何通过编程控制
IE 的操作呢,本文将一步步介绍如何通过 VB调用 IE 的对象库来对 IE 进行控制。
本文使用的编程工具是 VB6 英文企业版,浏览器是 IE5,以下的代码只能在 IE4 及以上版
本下运行。另外为了能深
入了解程序代码,最好能安装 MSDN。文中的所有对象、函数、事件在其中都可以查到。
一、如何获得 Windows 中所有打开的浏览器窗口
首先打开 VB,建立一个新工程,点击菜单 Projects | References 项,在 Available
References 列表中选择
Microsoft Internet Controls 项将 Internet 对象引用介入到工程中。添加一个 ListBox 到
Form1,然后在 Form1 中添
加如下代码:
Dim dWinFolder As New ShellWindows
Private Sub Form_Load()
Dim objIE As Object
For Each objIE In dWinFolder
If InStr(1, objIE.FullName, “IEXPLORE.EXE”, vbTextCompare) <> 0 Then
List1.AddItem objIE.LocationURL
End If
Next
End Sub
打开几个浏览器窗口,然后运行程序,可以看到所有浏览窗口中的 URL 地址都在 List1 中
列了出来。
上面程序中的 ShellWindows 对象是描述当前所有打开的“浏览窗口”对象集合的对象,利用
For…Each 语句可以
获 得 其 中 所有的 浏 览 窗口 对象 。 这 是 一 个 WebBrowser 对象 , 在 MSDN 索 引 中通 过
“WebBrowser Object”中可以找到该
对象的详细介绍
在 ShellWindows 中的浏览窗口对象不仅包含 IE,还包含 Explore 窗口(向资源管理器或者
“我的电脑”窗口就是
Explore)。只不过它们的宿主程序一个是 IEXPLORE.EXE,一个是 EXPLORE.EXE。所
以对每一个对象首先根据其 FulName
属性来判断窗口是 IE 浏览器,如果是,则将该窗口的 URL 地址列出来。
通过 WebBrowser 对象可以获得和设置浏览器窗口中的很多属性,例如窗口大小、工具栏 、
状态栏状态以及控制
窗口的浏览等,大家通过 MSDN 都可以查到。
二、如何得到每一个浏览窗口的内容
在上面程序的 Form1 中再添加一个 TextBox 控件,将 MultiLine 属性设置为 True,然后在
List1 的 Click 事件中添加如
下代码: