送分请高手:如何用vb拨号(可用程序输用户及密码)及确定是否在线?
宽带不稳,连接成功后右下角的电脑标识还有,但是断线了却不显示,用其他方法检测也说在线,可就是打不开网页,需要手工断开然后重拨。

解决方案 »

  1.   

    Public Declare Function RasCreatePhonebookEntry Lib "RasApi32.DLL" Alias "RasCreatePhonebookEntryA" (ByVal hWND As Long, ByVal lpszPhonebook 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 RasEditPhonebookEntry Lib "RasApi32.DLL" Alias "RasEditPhonebookEntryA" (ByVal hWND As Long, ByVal lpszPhonebook As String, ByVal lpszEntryName As String) As Long
    Public Declare Function RasEnumConnections Lib "RasApi32.DLL" Alias "RasEnumConnectionsA" (lprasconn As Any, lpcb As Long, lpcConnections As Long) As Long
    Public Declare Function RasEnumEntries Lib "RasApi32.DLL" Alias "RasEnumEntriesA" (ByVal reserved As String, ByVal lpszPhonebook As String, lprasentryname As Any, lpcb As Long, lpcEntries As Long) As Long
    Public Declare Function RasGetConnectStatus Lib "RasApi32.DLL" Alias "RasGetConnectStatusA" (ByVal hRasConn As Long, lpRASCONNSTATUS As Any) As Long
    Public Declare Function RasGetEntryDialParams Lib "RasApi32.DLL" Alias "RasGetEntryDialParamsA" (ByVal lpszPhonebook As String, lprasdialparams As Any, lpfPassword As Long) As Long
    Public Declare Function RasGetErrorString Lib "RasApi32.DLL" Alias "RasGetErrorStringA" (ByVal uErrorValue As Long, ByVal lpszErrorString As String, ByVal cBufSize As Long) As Long
    Public Declare Function RasGetProjectionInfo Lib "RasApi32.DLL" Alias "RasGetProjectionInfoA" (ByVal hRasConn As Long, ByVal rasprojection As Long, lpprojection As Any, lpcb As Long) As Long
    Public Declare Function RasHangUp Lib "RasApi32.DLL" Alias "RasHangUpA" (ByVal hRasConn As Long) As Long
    Public Declare Function RasSetEntryDialParams Lib "RasApi32.DLL" Alias "RasSetEntryDialParamsA" (ByVal lpszPhonebook As String, lprasdialparams As Any, ByVal fRemovePassword As Long) As Long
    就是这些函数了,就能实现你要的功能。具体偶就不说明了。
      

  2.   

    试了,不灵哦,不知win2003是不是不适用?
      

  3.   

    http://www.moon-soft.com/program/doc/readelite10369.htm
    来自问专家(http://askpro.yeah.net) 
    标题:在VB中如何实现自动启动拨号网络 
        要想实现自动启动拨号网络,就要使用 Remote Access Service (RAS) API
    ,这个API最早是在 Windows for Workgroup 3.11中出现的,现在它已经成为Wi
    n32 API的一个组成部分。该API将整个拨号网络称为 Phonebook,而每一个连接
    称为 PhonebookEntry。你可以使用 RasCreatePhonebookEntry来创建新的连接,
    用 RasDial来拨号,而 RasEnumEntries可以获得当前系统已有的所有连接,使用
    其它的 RAS函数还可以获取或设置连接的参数。RasEditPhonebookEntry函数将激
    活标准的Windows 95/NT属性对话框来修改连接的属性。你可以从 Win32 API的手
    册找到所有相关函数的详细介绍。对于VB来说直接调用RAS API有一些不便,因为
    该API的函数使用了一些自定义的类型(Type),所以Microsoft专门设计了类模块
    封装了整个RAS API。你可以从http://support.microsoft.com/download/suppo
    rt/mslfiles/Vb32ras.exe下载一个使用VB 4.0编写的例子(本地下载:http://w
    ww4.netease.com/~askpro/download/vb32ras.zip)。释放该文件后可以找到两个
    工程文件:RAS_AUTO和RASAPI。RAS_AUTO是对API的封装,你可以把它编译成DLL
    的OLE Automation服务器供自己的程序调用。RASAPI是调用RAS_AUTO服务器的例
    子,该程序是你需要认真研究和掌握的。如果你不喜欢这种封装形式,也可以直
    接使用Ras_glb.bas文件,这里包括了所有需要的API声明。--
    Dim fishy As Friend 
      

  4.   

    上面的在win2003上运行功能恰合我意,可惜是win95版,在win2003上不能正确运行,就是这种思路
      

  5.   

    HKEY_USERS--->.DEFAULT------->RemoteAccess------->profile
      

  6.   

    我以前做了一个有关拨号的程序,发现用VB必须使用微软提供的ras***.dll拨号库,而且98和2k以上的系统,不一样。
    后来用了一个控件,CSRAS32.OCX,控件不错,比较好用。
    你可以找找,好像有一款叫ADSL拨号计费精灵的软件就是用用它写的。如果,有空我把我以前做的一个东东放在我的网站上,你近期可以有空去看看。http://www.mndsoft.com/blog/default.asp
      

  7.   

    win95 或win98可能可以,winxp,2003就是不行,微软真是小气