原理简介:用Timer控件的True或者False值,控制倒计时的开始,当到达设定时间的时候,弹出对话框提示断开连接。
Option Explicit
Dim Hours As Integer
Dim Minutes As Integer
Dim Seconds As Integer
Dim time As Date
Private Declare Function RasHangUp Lib "RaSAPi32.dll" Alias "RasHangUpA" (ByVal hRasConn As Long) As Long
Private Declare Function RasEnumConnections Lib "RasApi32.dll" Alias "RasEnumConnectionsA" (lprasconn As Any, lpcb As Long, lpcConnections As Long) As Long
Const RAS95_MaxEntryName = 256
Const RAS95_MaxDeviceName = 128
Const RAS_MaxDeviceType = 16
Private Type RASCONN95
dwSize As Long
hRasConn As Long
szEntryName(RAS95_MaxEntryName) As Byte
szDeviceType(RAS_MaxDeviceType) As Byte
szDeviceName(RAS95_MaxDeviceName) As Byte
End Type
下面一段代码是对Timer的控制,以及到设定时间的时候断开连接的代码
Private Sub Timer1_Timer()
Timer1.Enabled = False
If (Format100 100time, "hh") && ":" && Format100 100time, "nn") && ":" && Format100 100time, "ss"))〈〉"00:00:00" Then
time = DateAdd("s", -1, time)
Label1.Visible = False
Label1.Caption = Format100 100time, "hh") && ":" && Format100 100time, "nn") && ":" && Format100 100time, "ss")
Label1.Visible = True
Timer1.Enabled = True
Else
Timer1.Enabled = False
End If
If Label1.Caption = "00:00:01" Then
dsdklj.Windowstate = 0
Command1.Enabled = True
MsgBox "时间到了,正在断开连接"
Dim lngRetCode As Long
Dim lpcb As Long
Dim lpcConnections As Long
Dim intArraySize As Integer
Dim intLooper As Integer
ReDim lprasconn95(intArraySize) As RASCONN95
lprasconn95(0).dwSize = 412
lpcb = 256 * lprasconn95(0).dwSize
lngRetCode = RasEnumConnections(lprasconn95(0), lpcb, lpcConnections)
If lngRetCode = 0 Then
If lpcConnections〉0 Then
For intLooper = 0 To lpcConnections-1
RasHangUp lprasconn95(intLooper).hRasConn
Next intLooper
Unload Me
Else
MsgBox "时间到了,没有拨号网络连接"
Unload Me
End If
End If
End If
End Sub
其实,这个程序还可以进一步的完善,比如添加暂停功能、或者经过改造,适用于宽带的,等等。这不,笨笨拿着电话单正偷着乐呢!笨笨已经利用这个小程序省下了不少网费,你呢?
上一篇: 用Visual Basic也可以实现P2P
下一篇: 用VB6.0编写手机短信发送
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




