客户机怎么控制上网还是不上呢?如果服务器控制,只要记录服务器的控制记录就可以;不能控制,你可以截取一些特征,比如IE的窗口信息,端口。。

解决方案 »

  1.   

    如下:Option ExplicitPrivate Declare Function RasEnumConnections Lib "RasApi32.dll" Alias "RasEnumConnectionsA" (lpRasCon As Any, lpcb As Long, lpcConnections As Long) As Long
    Private Declare Function RasGetConnectStatus Lib "RasApi32.dll" Alias "RasGetConnectStatusA" (ByVal hRasCon As Long, lpStatus As Any) As Long
    '
    Private Const RAS95_MaxEntryName = 256
    Private Const RAS95_MaxDeviceType = 16
    Private Const RAS95_MaxDeviceName = 32
    '
    Private 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
    '
    Private Type RASCONNSTATUS95
        dwSize As Long
        RasConnState As Long
        dwError As Long
        szDeviceType(RAS95_MaxDeviceType) As Byte
        szDeviceName(RAS95_MaxDeviceName) As Byte
    End Type
            
    Private 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 IfEnd FunctionPrivate Sub Form_Load()
    If IsConnected = True Then
    Debug.Print "已联网!"
    Else
    Debug.Print "未联网......"
    End IfEnd Sub