明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

在VB中調(diào)用瀏覽器訪問(wèn)頁(yè)面

[摘要]調(diào)用瀏覽器訪問(wèn)某一網(wǎng)址(頁(yè))是軟件中常見(jiàn)的功能。本文總結(jié)在VB編程中調(diào)用瀏覽器訪問(wèn)網(wǎng)頁(yè)的三種方法: Shell 函數(shù)、 ShellExecute API 函數(shù)和 Automation 對(duì)象技術(shù)! hell 函數(shù):使用VB Shell 函數(shù)直接執(zhí)行瀏覽器可執(zhí)行文件是調(diào)用瀏覽器訪問(wèn)網(wǎng)頁(yè)的最簡(jiǎn)單方法...
調(diào)用瀏覽器訪問(wèn)某一網(wǎng)址(頁(yè))是軟件中常見(jiàn)的功能。本文總結(jié)在VB編程中調(diào)用瀏覽器訪問(wèn)網(wǎng)頁(yè)的三種方法: Shell 函數(shù)、 ShellExecute API 函數(shù)和 Automation 對(duì)象技術(shù)。


  Shell 函數(shù):
使用VB Shell 函數(shù)直接執(zhí)行瀏覽器可執(zhí)行文件是調(diào)用瀏覽器訪問(wèn)網(wǎng)頁(yè)的最簡(jiǎn)單方法。 如:

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 "瀏覽器調(diào)用錯(cuò)誤!", vbOKOnly + vbCritical, "錯(cuò)誤!", 0, 0
End If

Shell 函數(shù)執(zhí)行成功,返回代表這個(gè)程序任務(wù)ID值,若不成功,則返回0值 。


ShellExecute API 函 數(shù):
Win32 API 函數(shù) ShellExecute 提供了調(diào)用瀏覽器的另一種方法:

API函數(shù)聲明 :
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

函數(shù)返回值為大于32的整數(shù)表明成功執(zhí)行調(diào)用,小于或等于32表明調(diào)用失敗。
例如:

Dim Result
Result = ShellExecute(0, vbNullString, "http://www.ccw.com.cn", vbNullString, vbNullString, SW_SHOWNORMAL)
If Result <= 32 Then
MsgBox "調(diào)用瀏覽器錯(cuò)誤!", vbOKOnly + vbCritical, "錯(cuò)誤:", 0
End If


使用Automation對(duì)象:
微軟的 Automation 技術(shù)為調(diào)用IE瀏覽器提供了新的方法:使用 Internet Explorer 對(duì)象。 Internet Explorer 對(duì)象保存在名為 InternetExplorer 的類(lèi)中,該類(lèi)是 SHDocVw 對(duì)象庫(kù)的一個(gè)成員。

在 VB 中 程序中引用 Internet Explorer 對(duì)象 :在"工程"菜單中單擊"引用",在彈出對(duì)話框中選擇"Microsoft Internet Controls"(SHDOCVW.DLL),就把對(duì) Internet Explorer對(duì)象庫(kù)的引用添加到了我們自己的工程文件中。

使用IE對(duì)象 :

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

即可調(diào)用瀏覽器訪問(wèn)特定網(wǎng)頁(yè)。


上述三種方法中,Shell函數(shù)調(diào)用看似最簡(jiǎn)單,但卻有很大缺點(diǎn):定位瀏覽器可執(zhí)行文件十分不易--不同的PC,瀏覽器可執(zhí)行文件可能被安裝于不同的目錄下,而不一定是系統(tǒng)目錄或 PATH 環(huán)境變量指定的目錄。
使用ShellExecute API函數(shù)時(shí),程序調(diào)用的是操作系統(tǒng)默認(rèn)的瀏覽器(而無(wú)論是這一瀏覽器是IE或Netscape,以及它實(shí)際所在的位置),因而是通常情況下最為可行的方法。
Automation對(duì)象調(diào)用的方法僅適用于 IE 瀏覽器,但優(yōu)點(diǎn)是調(diào)用成功后可以在程序中進(jìn)一步使用該對(duì)象實(shí)現(xiàn)某些高級(jí)功能,如訪問(wèn)當(dāng)前加載的網(wǎng)頁(yè)的HTML內(nèi)部元素或Form表單等。