• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

在VB中调用浏览器访问网页

发布: 2007-7-14 20:28 | 作者: 佚名    | 来源: 网络转载     | 查看: 49次 | 进入软件测试论坛讨论

领测软件测试网 调用浏览器访问某一网址(页)是软件中常见的功能。本文总结在VB编程中调用浏览器访问网页的三种方法: Shell 函数、 ShellExecute API 函数和 Automation 对象技术。


  Shell 函数:
使用VB Shell 函数直接执行浏览器可执行文件是调用浏览器访问网页的最简单方法。 如:

Dim Result As Variant
Result = Shell("C:\Program Files\Plus!\Microsoft Internet\IExplore.exe http://www.ccw.com.cn", vbMaximizedFocus)
If Result = 0 Then
MsgBox "浏览器调用错误!", vbOKOnly + vbCritical, "错误!", 0, 0
End If

Shell 函数执行成功,返回代表这个程序任务ID值,若不成功,则返回0值 。


ShellExecute API 函 数:
Win32 API 函数 ShellExecute 提供了调用浏览器的另一种方法:

API函数声明 :
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long,ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Const SW_SHOWNORMAL = 1

函数返回值为大于32的整数表明成功执行调用,小于或等于32表明调用失败。
例如:

Dim Result
Result = ShellExecute(0, vbNullString, "http://www.ccw.com.cn", vbNullString, vbNullString, SW_SHOWNORMAL)
If Result <= 32 Then
MsgBox "调用浏览器错误!", vbOKOnly + vbCritical, "错误:", 0
End If


使用Automation对象:
微软的 Automation 技术为调用IE浏览器提供了新的方法:使用 Internet Explorer 对象。 Internet Explorer 对象保存在名为 InternetExplorer 的类中,该类是 SHDocVw 对象库的一个成员。

在 VB 中 程序中引用 Internet Explorer 对象 :在"工程"菜单中单击"引用",在弹出对话框中选择"Microsoft Internet Controls"(SHDOCVW.DLL),就把对 Internet Explorer对象库的引用添加到了我们自己的工程文件中。

使用IE对象 :

Dim Browser As Object
Set Browser = CreateObject("InternetExplorer.Application")
Browser.Visible = True
Browser.Navigate ("http://www.ccw.com.cn")

即可调用浏览器访问特定网页。


上述三种方法中,Shell函数调用看似最简单,但却有很大缺点:定位浏览器可执行文件十分不易--不同的PC,浏览器可执行文件可能被安装于不同的目录下,而不一定是系统目录或 PATH 环境变量指定的目录。
使用ShellExecute API函数时,程序调用的是操作系统默认的浏览器(而无论是这一浏览器是IE或Netscape,以及它实际所在的位置),因而是通常情况下最为可行的方法。
Automation对象调用的方法仅适用于 IE 浏览器,但优点是调用成功后可以在程序中进一步使用该对象实现某些高级功能,如访问当前加载的网页的HTML内部元素或Form表单等。

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网