Platform SDK: RAS/Routing and RAS |
The RasEnumConnections function lists all active RAS connections. It returns each connection's handle and phone-book entry name.
DWORD RasEnumConnections( LPRASCONN lprasconn, // buffer to receive connections // data LPDWORD lpcb, // size in bytes of buffer LPDWORD lpcConnections // number of connections written // to buffer );
If the function succeeds, the return value is zero.
If the function fails, the return value is either a nonzero error value listed in the RAS header file or ERROR_BUFFER_TOO_SMALL or ERROR_NOT_ENOUGH_MEMORY.
If a connection was made without specifying a phone-book entry name, the information returned for that connection gives the connection phone number preceded by ".".
The following sample code enumerates the current RAS connection. This code assumes that, at most, only one connection is currently active. Note that the code sets the dwSize member of the RASCONN structure to specify the version of the structure.
lpRasConn = (LPRASCONN) GlobalAlloc(GPTR, sizeof(RASCONN)); lpRasConn->dwSize = sizeof(RASCONN); nRet = RasEnumConnections(lpRasConn, &lpcb, &lpcConnections); if (nRet != 0) { printf("RasEnumConnections failed: Error = %d", nRet); } else { printf("The following RAS connections are currently active\n\n"); for (i = 0; i < lpcConnections; i++) { printf("Entry name: %s\n", lpRasConn->szEntryName); lpRasConn++; } }
Windows NT/2000: Requires Windows NT 3.1 or later.
Windows 95/98: Requires Windows 95 or later.
Header: Declared in Ras.h.
Library: Use Rasapi32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000.
Remote Access Service (RAS) Overview, Remote Access Service Functions, RASCONN, RasEnumEntries, RasGetConnectStatus