Option ExplicitConst RAS95_MaxEntryName = 256Private Type RASENTRYNAME95 dwSize As Long szEntryName(RAS95_MaxEntryName) As Byte End TypePrivate 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 LongPrivate Sub DialReadList() '取得系统连接列表 Dim s&, l&, ln&, strName$ Dim rasList() As RASENTRYNAME95 ReDim rasList(255) rasList(0).dwSize = 264 s = 256 * rasList(0).dwSize l = RasEnumEntries(vbNullString, vbNullString, rasList(0), s, ln) For l = 0 To ln - 1 strName = StrConv(rasList(l).szEntryName(), vbUnicode) strName = Left(strName, InStr(strName, Chr(0)) - 1) frmMain.lstDialup.AddItem strName Next End Sub
dwSize As Long
szEntryName(RAS95_MaxEntryName) As Byte
End TypePrivate 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 LongPrivate Sub DialReadList()
'取得系统连接列表
Dim s&, l&, ln&, strName$
Dim rasList() As RASENTRYNAME95
ReDim rasList(255)
rasList(0).dwSize = 264
s = 256 * rasList(0).dwSize
l = RasEnumEntries(vbNullString, vbNullString, rasList(0), s, ln)
For l = 0 To ln - 1
strName = StrConv(rasList(l).szEntryName(), vbUnicode)
strName = Left(strName, InStr(strName, Chr(0)) - 1)
frmMain.lstDialup.AddItem strName
Next
End Sub