⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 15636.html

📁 以电子书的形式收集了VB一些常见问题解决方法,可以很方便的查找自己需要解决的问题.对一些VB初学者很用.
💻 HTML
字号:
<html>
  <head>
    <title>Re: [vb6] 如何侦测/中断拨号网路的连线?</title>
  </head>
  <body bgcolor="#FFFFFF" vlink="#808080">
    <center>
      <h1>Re: [vb6] 如何侦测/中断拨号网路的连线?</h1>
    </center>
<hr size=7 width=75%>

<hr size=7 width=75%><p>
Posted by <a href="mailto:honey0@tcts1.seed.net.tw">Honey</a> on July 14, 1999 at 12:22:09:<p>
In Reply to: <a href="15634.html">[vb6] 如何侦测/中断拨号网路的连线?</a> posted by 小竹 on July 14, 1999 at 11:51:49:<p>
: sorry, 请问各位高手几个问题..<p>: 1.有没有方法可以中断 Win95 拨号网路的连线...<p>: 2.要如何才能得知目前电脑有没有连上 Internet 哩?<br>提供你以下程式 在Form上摆两个command<br>按command1确认有否取得连线<br>按command2中断连线<p>Option Explicit<br>Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal _<br>hKey As Long) As Long<br>Private Declare Function RegOpenKey Lib "advapi32.dll" Alias _<br>"RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As _<br>String, phkResult As Long) As Long<br>Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias _<br>"RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName _<br>As String, ByVal lpReserved As Long, lpType As Long, _<br>lpData As Any, lpcbData As Long) As Long<p>Private Declare Function RasEnumConnections Lib _<br>"rasapi32.dll" Alias "RasEnumConnectionsA" (lpRasConn As _<br>Any, lpcb As Long, lpcConnections As Long) As Long<br>Private Declare Function RasHangUp Lib "rasapi32.dll" Alias _<br>"RasHangUpA" (ByVal hRasConn As Long) As Long<br>Const ERROR_SUCCESS = 0&<br>Const RAS_MAXENTRYNAME As Integer = 256<br>Const RAS_MAXDEVICETYPE As Integer = 16<br>Const RAS_MAXDEVICENAME As Integer = 128<br>Const RAS_RASCONNSIZE As Integer = 412<br>Const APINULL = 0&<br>Const HKEY_LOCAL_MACHINE = &H80000002<br>Private Type RasEntryName<br>    dwSize As Long<br>    szEntryName(RAS_MAXENTRYNAME) As Byte<br>End Type<p>Private Type RasConn<br>    dwSize As Long<br>    hRasConn As Long<br>    szEntryName(RAS_MAXENTRYNAME) As Byte<br>    szDeviceType(RAS_MAXDEVICETYPE) As Byte<br>    szDeviceName(RAS_MAXDEVICENAME) As Byte<br>End Type<br>Dim gstrISPName As String<br>Dim ReturnCode As Long<p>Public Function ActiveConnection() As Boolean<br>Dim hKey As Long<br>Dim lpSubKey As String<br>Dim phkResult As Long<br>Dim lpValueName As String<br>Dim lpReserved As Long<br>Dim lpType As Long<br>Dim lpData As Long<br>Dim lpcbData As Long<br>ActiveConnection = False '/*预先设定没有连线*/<p>lpSubKey = "System\CurrentControlSet\Services\RemoteAccess"<br>ReturnCode = RegOpenKey(HKEY_LOCAL_MACHINE, lpSubKey, _<br>phkResult)<br>'/*取得HKEY_LOCAL_MACHINE底下 _<br>System\CurrentControlSet\Services\RemoteAccess _<br>phkResult是传回SubKey的hKey*/<p>If ReturnCode = ERROR_SUCCESS Then<br>'/*RegOpenKey若执行成功会传回0*/<br>    hKey = phkResult '/*hKey*/<br>    lpValueName = "Remote Connection"<br>    lpReserved = APINULL<br>    lpType = APINULL<br>    lpData = APINULL<br>    lpcbData = APINULL<br>    ReturnCode = RegQueryValueEx(hKey, lpValueName, _<br>    lpReserved, lpType, ByVal lpData, lpcbData)<br>    lpcbData = Len(lpData)<br>    ReturnCode = RegQueryValueEx(hKey, lpValueName, _<br>    lpReserved, lpType, lpData, lpcbData)<br>    '/*lpValueName:名称 _<br>    lpReserved:保留参数 _<br>    lpType:资料类别 _<br>    lpData:传回资料 _<br>    lpcbData:资料长度*/<br>    <br>    If ReturnCode = ERROR_SUCCESS Then<br>    '/*RegQueryValueEx执行成功会传回零*/<br>        If lpData = 0 Then<br>            ActiveConnection = False<br>            '/*未取得连线*/<br>        Else<br>            ActiveConnection = True<br>            '/*取得连线*/<br>        End If<br>    End If<br>                <br>RegCloseKey (hKey)<br>'/*关闭*/<br>End If<br>End Function<p>Public Sub HangUp()<br>Dim i As Long<br>Dim lpRasConn(255) As RasConn<br>Dim lpcb As Long<br>Dim lpcConnections As Long<br>Dim hRasConn As Long<br>lpRasConn(0).dwSize = RAS_RASCONNSIZE<br>lpcb = RAS_MAXENTRYNAME * lpRasConn(0).dwSize<br>lpcConnections = 0<br>ReturnCode = RasEnumConnections(lpRasConn(0), lpcb, _<br>lpcConnections)<p>If ReturnCode = ERROR_SUCCESS Then<br>    For i = 0 To lpcConnections - 1<br>        If Trim(ByteToString(lpRasConn(i).szEntryName)) _<br>            = Trim(gstrISPName) Then<br>            hRasConn = lpRasConn(i).hRasConn<br>            ReturnCode = RasHangUp(ByVal hRasConn)<br>        End If<br>    Next i<br>End If<p>End Sub<p>Public Function ByteToString(bytString() As Byte) As String<br>Dim i As Integer<br>ByteToString = ""<br>i = 0<br>While bytString(i) = 0&<br>ByteToString = ByteToString & Chr(bytString(i))<br>i = i + 1<br>Wend<br>End Function<p><br>Private Sub Command1_Click()<br>Call ActiveConnection<br>If ActiveConnection = True Then<br>     MsgBox "有连线", vbInformation<br>Else<br>    MsgBox "没有连线", vbInformation<br>End If<br>End Sub<p>Private Sub Command2_Click()<br>Call HangUp<br>End Sub<br>
<br>
<br><hr size=7 width=75%><p>
<a name="followups">Follow Ups:</a><br>
<ul><!--insert: 15636-->
</ul><!--end: 15636-->
<br><hr size=7 width=75%><p>

</body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -