在VB程序中怎样挂断拨号网络
要控制拨号网络,应该使用远程访问服务(RAS) API,它最早出现在Windows for Workgroup 3.11中,现在已经成为Win32 API的一个组件。挂断拨号网络的功能叫做RasHangUp。这个函数的功能和用法非常简单。它只有一个参数,即要挂断的拨号网络连接的句柄。我们可以使用RasEnumConnections来获取当前系统的所有RAS连接(通常我们的系统一次只使用一个拨号网络连接),使用该函数可以获得RasHangUp所需的句柄。但是,RasEnumConnections函数在Windows 95和Windows NT中的使用略有不同。由于篇幅所限,我们只举一个在Windows 95中调用该函数的例子。读者可以从WIN32API手册中找到所有相关函数的详细介绍,但RAS API所需的声明语句并不包含在Win32 API中。VB的TXT。下面我们给出解决这个问题所需的函数和结构声明。
要运行以下示例,首先需要构建一个窗体,在窗体上放置一个按钮,然后输入以下语句:
option Explicit
Private Declare Function rashan gup Lib " rasapi 32。DLL "别名" RasHangUpA "(ByVal hras conn As Long)
私有声明函数RasEnumConnections Lib "RasApi32。DLL "别名" RasEnumConnectionsA "(lprasconn As Any,lpcb As Long,lpcConnections As Long)一样长
Const RAS 95 _ MaxEntryName = 256
Const RAS 95 _ MaxDeviceName = 128
Const RAS _ MaxDeviceType = 16
私有类型RASCONN95
'将dwsize设置为412
dwSize As Long
hRasConn As Long
szEntryName(RAS 95 _ MaxEntryName)As Byte
szDeviceType(RAS _ max device Type)As Byte
szDeviceName(RAS 95 _ max device name)As Byte
End Type
private Sub command 1 _ Click()
Dim lngRetCode As Long
Dim lpcb As Long
Dim LPC connections As Long
Dim int array size As Integer
ReDim lprasconn 95(intArraySize)As rasconn 95
lprasconn 95(0)。dwSize = 412
lpcb = 256 * lprasconn 95(0)。dwSize
lngRetCode = RasEnumConnections(lprasconn 95(0),lpcb,LPC connections)
If lngRetCode = 0 Then
If LPC connections > 0 Then
For int looper = 0 To LPC connections-1
Shang gup lprasconn 95(int looper)。hras conn
next int looper
else
msgbox "没有拨号网络连接!",VB information
End If
End If
End Sub
运行时,按下按钮即可断开拨号网络。
位律师回复
0条评论