六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

程序中如何打開默認的撥號連接

[摘要]隨著因特網的迅猛發展,現在編程常需要在程序中直接聯網來處理一些事項,如在線注冊和在線幫助,這就要求我們要在程序中建立某些連接。很多軟件在不知用戶是否聯網的情況下不管三七二十一就啟動瀏覽器查找網址,費了九牛二虎之力只能查出一錯誤頁來(當然不可能有什么好的結果)。如果我們在程序編寫時能自動判斷用戶是否...
隨著因特網的迅猛發展,現在編程常需要在程序中直接聯網來處理一些事項,如在線注冊和在線幫助,這就要求我們要在程序中建立某些連接。很多軟件在不知用戶是否聯網的情況下不管三七二十一就啟動瀏覽器查找網址,費了九牛二虎之力只能查出一錯誤頁來(當然不可能有什么好的結果)。如果我們在程序編寫時能自動判斷用戶是否已經聯網,如已經聯網則打開聯接,如沒有則啟動默認的撥號連接,這樣是不是讓人覺得你的軟件更勝人一處呢?判斷是否已聯網很多地方都有介紹,這里我們只介紹如何啟動默認的撥號連接。
---- 在介紹之前讓我們首先看看如何打開撥號網絡。由于撥號網絡不是一個可執行文件,所以不能用 “Shell 可執行文件”的方式來打開。要啟動撥號網絡,需借助 Explorer ,方法如下:

Shell "Explorer ::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\" & "::{992CFFA0-F557-101A-88EC-00DD010CCC48}", vbNormalFocus


---- 但若是要啟動撥號網絡中的某一個連接,則需借助rundll.exe 及 rnaui.dll來啟動,方法如下(假定連接名稱為163):

Shell "rundll rnaui.dll,RnaDial 163", vbNormalFocus


---- 說明:在以上敘述中,“,RnaDial 163”這部分不要插入額外的空格,大小寫也不要任意更改。

---- 上面僅僅假定了連接名稱,但實際編程中我們是不知道其名稱的,如何取得默認的連接名稱并啟動它呢?這里我們可利用注冊表來達到目的。完整程序如下:

---- 在窗體上放置一個命令按鈕(名稱為 cmdCallConnect),下面為代碼部份:

Option Explicit
     
注釋:有關注冊的API聲明
Private Declare Function RegOpenKeyEx Lib "advapi32" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long

Private Declare Function RegQueryValueEx Lib "advapi32" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, ByRef lpType As Long, ByVal szData As String, ByRef lpcbData As Long) As Long

Private Declare Function RegCloseKey Lib "advapi32" (ByVal hKey As Long) As Long
注釋:常數
Const HKEY_CURRENT_USER = &H80000001
Const ERROR_SUCCESS = 0&
     
Private Sub cmdCallConnect_Click()
注釋:啟動默認撥號連接
Shell "rundll rnaui.dll,RnaDial " + GetConnect, vbNormalFocus
End Sub
     
Public Function GetConnect() As String
Dim hKey As Long
Dim SubKey As String
hKey = HKEY_CURRENT_USER  注釋:主鍵
SubKey = "RemoteAccess"   注釋:子鍵
注釋:取得默認連接名
GetConnect = GetRegValue(hKey, SubKey, "Default")
End Function

Public Function GetRegValue(hKey As Long, lpszSubKey As String, szKey As String) As Variant
On Error GoTo ErrorRoutineErr:
Dim phkResult As Long
Dim lResult As Long
Dim szBuffer As String
Dim lBuffSize As Long

注釋:創建緩沖區
szBuffer = Space(255)
lBuffSize = Len(szBuffer)

注釋:打開注冊鍵
RegOpenKeyEx hKey, lpszSubKey, 0, 1, phkResult

注釋:查詢結果
lResult = RegQueryValueEx(phkResult,szKey, 0, 0, szBuffer,lBuffSize)

注釋:關閉注冊鍵
RegCloseKey phkResult

注釋:返回結果
If lResult = ERROR_SUCCESS Then
GetRegValue = Left(szBuffer, lBuffSize - 1)
Else
GetRegValue = ""
End If
Exit Function

ErrorRoutineErr:
GetRegValue = ""
End Function
以上程序在 WIN98,VB6.0 下調試通過。


主站蜘蛛池模板: 中文国产成人久久精品小说 | 天天影视色香欲综合影视大全 | 三级免费黄色片 | 色播五月激情五月 | 综合精品| 亚洲午夜在线观看 | 天天看片天天a免费观看 | 又粗又大又爽又紧免费视频 | 在线国产你懂的 | 天天拍天天干 | 青青草原国产 | 亚洲欧美国产精品专区久久 | 欧美一级www片免费观看 | 欧美综合精品一区二区三区 | 午夜久久久久久久 | 人人澡人人爱 | 天天看天天摸天天操 | 午夜亚洲国产成人不卡在线 | 色狠狠色狠狠综合天天 | 最新国产精品精品视频 | 一级片aaaa | 午夜日韩久久影院 | 亚洲天堂男人天堂 | 小草cc | 色狠狠狠狠综合影视 | 最好韩国日本高清 | 色综合网站在线 | 日韩中文字幕a | 日本xx高清视频免费观看 | 午夜网站在线观看 | 一级黄色在线播放 | 亚洲精品中文字幕乱码影院 | 泄欲网站免费观看 | 日本视频在线观看播放免费 | 我想看一级播放片一级的 | 最近免费观看高清韩国日本大全 | 亚洲视频在线免费看 | 日韩三级一区二区三区 | 日韩高清在线日韩大片观看网址 | 亚洲日韩中文第一精品 | 香蕉欧美成人精品a∨在线观看 |