VB6.0代码
1、第一个问题还要添上连接名(就是拨号连接的名字)
我这里有一个现成的代码,挺长的,能上网、断网、查看网络状态、查看连接数目,如果其它的不需要的话,自己看函数的名字,删了即可
把一下代码粘贴到模块中,在窗体某控件的时间中写:
Dim recAdConn&
recAdConn = AddConnection("连接名", "", "", "用户名", "密码", "")
Public Type RASCONN95
dwSize As Long
hRasConn As Long
szEntryName(256) As Byte
szDeviceType(16) As Byte
szDeviceName(128) As Byte
End Type
Public Type RASCONNSTATUS95
dwSize As Long
RasConnState As Long
dwError As Long
szDeviceType(16) As Byte
szDeviceName(128) As Byte
End Type
Public Declare Function RasGetConnectStatus Lib "RasApi32.DLL" Alias "RasGetConnectStatusA" (ByVal hRasCon As Long, lpStatus As Any) As Long
Public Declare Function lstrcpy Lib "kernel32" Alias "lstrcpyA" (lpString1 As Any, ByVal lpString2 As String) As Long
Public Declare Function RasDial Lib "RasApi32.DLL" Alias "RasDialA" (lpRasDialExtensions As Any, ByVal lpszPhonebook As String, lprasdialparams As Any, ByVal dwNotifierType As Long, lpvNotifier As Long, lphRasConn As Long) As Long
Public Declare Function RasHangUp Lib "RasApi32.DLL" Alias "RasHangUpA" (ByVal hRasConn As Long) As Long
Public Declare Function RasEnumConnections Lib "RasApi32.DLL" Alias "RasEnumConnectionsA" (lprasconn As Any, lpcb As Long, lpcConnections As Long) As Long
Public Function AddConnection(strNewEntryName As String, strNewPhoneNumber As String, strNewCallbackNumber As String, strNewUsername As String, strNewPassword As String, strNewDomain As String) As Long
Const APINULL = 0&
Dim lngRetCode As Long
Dim lngRetLstrcpy As Long
Dim lngRetHangUp As Long
Dim lprasdialparams As RASDIALPARAMS95
On Error GoTo 10
lprasdialparams.dwSize = 1052
lngRetLstrcpy = lstrcpy(lprasdialparams.szEntryName(0), strNewEntryName)
lngRetLstrcpy = lstrcpy(lprasdialparams.szPhoneNumber(0), strNewPhoneNumber)
lngRetLstrcpy = lstrcpy(lprasdialparams.szCallbackNumber(0), strNewCallbackNumber)
lngRetLstrcpy = lstrcpy(lprasdialparams.szUserName(0), strNewUsername)
lngRetLstrcpy = lstrcpy(lprasdialparams.szPassword(0), strNewPassword)
lngRetLstrcpy = lstrcpy(lprasdialparams.szDomain(0), strNewDomain)
Screen.MousePointer = vbHourglass
hRasConn = 0
lngRetCode = RasDial(ByVal APINULL, vbNullString, lprasdialparams, APINULL, ByVal APINULL, hRasConn)
Screen.MousePointer = vbDefault
If lngRetCode Then
lngRetHangUp = RasHangUp(hRasConn)
End If
10
AddConnection = lngRetCode
End Function
Public Function GetConnections() As Long
Dim lngRetCode As Long
Dim lpcb As Long
Dim lpcConnections As Long
Dim intArraySize As Long
ReDim lprasconn95(intArraySize) As RASCONN95
lprasconn95(0).dwSize = 412
lpcb = 256 * lprasconn95(0).dwSize
lngRetCode = RasEnumConnections(lprasconn95(0), lpcb, lpcConnections)
GetConnections = lpcConnections
End Function
Public Function HangUpAll() As Boolean
Dim lngRetCode As Long
Dim lpcb As Long
Dim lpcConnections As Long
Dim intArraySize As Long
Dim intLooper As Long
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
Else
HangUpAll = False
Exit Function
End If
End If
HangUpAll = True
End Function
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)
Tstatus.dwSize = 160
RetVal = RasGetConnectStatus(TRasCon(0).hRasConn, Tstatus)
IsConnected = IIf(Tstatus.RasConnState = &H2000, True, False)
End Function
2、查看当前IP
没有现成的代码,网上应该有的是吧!自己查一查
http://www.baidu.com/s?wd=VB+%B2%E9%BF%B4%B5%B1%C7%B0IP&cl=3
3、断网:第一个问题中已经说了,调用:
在控件事件中写
HangUpAll
完事
分享到:
相关推荐
标签中的“adsl vb_adsl 拨号 自动拨号”是对主题的关键词提炼,强调了VB编程与ADSL拨号的关联,以及自动拨号是主要的实现目标。 压缩包中的文件“ADSL.cls”很可能是一个VB类文件,用于封装ADSL拨号的相关操作。在...
2. **RAS(Remote Access Service)**:在VB中实现ADSL拨号通常涉及到RAS服务。RAS是Windows操作系统内置的服务,允许用户通过拨号连接到Internet。VB可以通过RAS API来控制拨号过程,包括建立、监视和断开连接。 3...
标题中的“ADSL.rar_adsl 拨号_dial up in vb_拨号上网_自动拨号”揭示了这个压缩包文件的内容主要涉及ADSL(Asymmetric Digital Subscriber Line)拨号上网技术,以及如何在Visual Basic (VB)环境中实现自动拨号的...
对于ADSL拨号应用,VB提供了丰富的API和控件,如Winsock控件,可以用来处理网络通信。开发此类程序需要理解ADSL拨号的协议,如PPP(Point-to-Point Protocol)和PPPoE(Point-to-Point Protocol over Ethernet),...
VB6写的一个很简单的ADSL的拨号面板,给不太懂电脑的人拨号的一个界面。包含,RSS拨号断开,获取系统文件夹路径,XP下的系统托盘,VB6实现窗口消息处理函数的实例代码,API的调用 更新的版本在 ...
《ADSL拨号工具MyDial深度解析及应用指南》 在互联网日益普及的今天,ADSL(Asymmetric Digital Subscriber Line)拨号上网是许多家庭和小型企业的主要接入方式。而MyDial作为一款专为ADSL用户设计的管理工具,它的...
在VB.NET(Visual Basic .NET)中,开发人员可以利用RAS功能来实现拨号连接,以便用户能够接入Internet或其他远程网络资源。下面将详细介绍RAS拨号以及如何在VB.NET中实现这一功能。 1. RAS(远程访问服务)基础: ...
利用rasapi32.dll进行拨号,包含详细的代码注释,在本代码基础上可以快速实现其它例如自动拨号换IP...1.新建 电话线/ADSL宽带/VPN拨号连接 2.获取系统已有的拨号连接 3.挂断拨号连接 4.删除拨号连接、对拨号连接重命名
在VB中,可以通过编写代码来实现对硬件设备如ADSL调制解调器的控制。VB提供了丰富的库函数和API接口,可以方便地进行系统交互,比如模拟拨号、断开网络连接等操作。 描述中的“自动上线!自动下线!”意味着VB程序...
- **技术更新**:随着网络技术的发展,传统的拨号上网方式(如通过56K调制解调器)已被ADSL、光纤等高速宽带接入所取代。因此,原来的拨号程序可能不再适用于现代的网络环境。 - **硬件兼容性**:现代计算机可能...
3. **ADSL拨号**:ADSL是宽带接入技术,通过电话线提供高速下行数据传输,而上行速度相对较慢。拨号过程包括用户身份验证、协商连接参数、建立PPP连接等步骤。 4. **账号管理**:程序可以创建和删除ADSL账号,这...
通过下载提供的VB宽带自动拨号源码,开发者可以深入研究如何在VB中实现上述功能。源码的阅读和分析有助于提高对VB编程和网络通信的理解,同时也可以为其他类似项目提供参考和灵感。如果你是一个初学者,这个源码可以...
ADSL拨号通常涉及到网络连接的设置,可能需要特定的软件或硬件来实现自动拨号上网。 描述中提到的“很牛x的编程basic ide”,表明作者发现了一款非常强大的基于Basic语言的集成开发环境(IDE)。Basic是一种简单...
这可能包括使用VB的RAS API调用来实现ADSL拨号,以及使用VC++进行更底层的编程,如直接操作网络驱动或系统服务。 在压缩包的文件名称列表中,我们看到“www.pudn.com.txt”可能是一个文本文件,它可能包含了关于...
学习和理解这段代码可以帮助新手开发者掌握如何用VB进行网络连接的管理和监控,以及如何自动化处理ADSL连接断线的场景。通过阅读和分析源码,可以了解到如何利用VB的事件驱动编程模型和系统调用来实现网络状态的监控...
"宽带连接"标签则表明此项目专注于解决网络连接问题,尤其是拨号上网的方式,这在ADSL等技术广泛使用的时代是非常常见的。 压缩包内的文件名称列表: 1. `Module1.bas`:这是一个模块文件,通常包含通用函数和子...
综上所述,这个ADSL拨号工具利用Visual Basic编程语言开发,结合了VC的部分功能,具有全球拨号的能力,并通过多个基础模块实现了包括ADSL连接、系统控制、用户界面、配置管理等一系列复杂功能。对于需要频繁进行ADSL...
2. 网络编程:学习如何在VB中实现网络连接,包括ADSL拨号连接的API调用。 3. 用户界面设计:如何创建用户友好的界面,让用户方便地输入和保存账号信息。 4. 数据存储:可能涉及了简单的数据存储技术,如将用户账号和...
首先,我们需要了解ADSL拨号的基本原理。ADSL连接通常依赖于Windows操作系统中的RAS(Remote Access Service)组件,拨号过程涉及调用`rasdial`命令行工具。在VB.NET中,我们可以通过`System.Diagnostics.Process`类...