The following function will return a user friendly string that describes the error code returned from a RASAPI call.
Public Declare Function RasGetErrorString _ Lib "rasapi32.dll" Alias "RasGetErrorStringA" _ (ByVal uErrorValue As Long, ByVal lpszErrorString As String, _ cBufSize As Long) As Long Public Declare Function FormatMessage _ Lib "kernel32" Alias "FormatMessageA" _ (ByVal dwFlags As Long, lpSource As Any, _ ByVal dwMessageId As Long, ByVal dwLanguageId As Long, _ ByVal lpBuffer As String, ByVal nSize As Long, _ Arguments As Long) As Long '__________________________________________________________________ Function VBRASErrorHandler(rtn As Long) As String Dim strError As String, i As Long strError = String(512, 0) If rtn > 600 Then RasGetErrorString rtn, strError, 512& Else FormatMessage &H1000, ByVal 0&, rtn, 0&, strError, 512, ByVal 0& End If i = InStr(strError, Chr$(0)) If i > 1 Then VBRASErrorHandler = Left$(strError, i - 1) End Function
See Also: Contents, Introduction