发信人: sanzang000() 
整理人: gzwsh(2002-11-05 22:58:16), 站内信件
 | 
 
 
【 在 swordqj 的大作中提到:】
 :我做了个程序,采用调制解调器拨号的
 :
 :要求,一旦拨上了网络(右下脚出现网络图标),
 :
 :那么才可以点击“安纽下一步”的这样的判断
 :
 :......
 我想这样可以,先在模块中声明个变量
 Option Explicit
 
 Public Declare Function RasEnumConnections Lib "RasApi32.dll" Alias "RasEnumConnectionsA" (lpRasCon As Any, lpcb As Long, lpcConnections As Long) As Long
 Public Declare Function RasGetConnectStatus Lib "RasApi32.dll" Alias "RasGetConnectStatusA" (ByVal hRasCon As Long, lpStatus As Any) As Long
 '
 Public Const RAS95_MaxEntryName = 256
 Public Const RAS95_MaxDeviceType = 16
 Public Const RAS95_MaxDeviceName = 32
 '
 Public Type RASCONN95
     dwSize As Long
     hRasCon As Long
     szEntryName(RAS95_MaxEntryName) As Byte
     szDeviceType(RAS95_MaxDeviceType) As Byte
     szDeviceName(RAS95_MaxDeviceName) As Byte
 End Type
 '
 Public Type RASCONNSTATUS95
     dwSize As Long
     RasConnState As Long
     dwError As Long
     szDeviceType(RAS95_MaxDeviceType) As Byte
     szDeviceName(RAS95_MaxDeviceName) As Byte
 End Type
         
 
 
 Public Function IsConnected() As Boolean
 Dim TRasCon(255) As RASCONN95
 Dim lg As Long
 Dim lpcon As Long
 Dim RetVal As Long
 Dim Tstatus As RASCONNSTATUS95
 '
 TRasCon(0).dwSize = 412
 lg = 256 * TRasCon(0).dwSize
 '
 RetVal = RasEnumConnections(TRasCon(0), lg, lpcon)
 If RetVal <> 0 Then
                     MsgBox "ERROR"
                     Exit Function
                     End If
 '
 Tstatus.dwSize = 160
 RetVal = RasGetConnectStatus(TRasCon(0).hRasCon, Tstatus)
 If Tstatus.RasConnState = &H2000 Then
                          IsConnected = True
                          Else
                          IsConnected = False
                          End If
 
 End Function
 再判断 当 IsConnected = True 时即连接
 如果 IsConnected = False  则未连接
 
 
 
  ---- 他明白了,你明白了没有~~
  *********
  *SanZang*
  ********* | 
 
 
 |