Tested with Windows 98 and 2000. If an RAS entry already exists with the same name, the existing entry is modified.
------------------
Home of the BASIC Gurus
www.basicguru.com
Code:
FUNCTION CreateRasEntry(BYVAL entry AS STRING, _ BYVAL areacode AS STRING, _ BYVAL phone AS STRING) AS LONG LOCAL cb AS LONG LOCAL count AS LONG LOCAL x AS LONG LOCAL modem AS STRING LOCAL r AS RASENTRY RasEnumDevices BYVAL %NULL, cb, count IF ISFALSE count THEN EXIT FUNCTION END IF cb = LEN(RASDEVINFO) * count DIM rdi(1 to count) AS RASDEVINFO rdi(1).dwSize = LEN(RASDEVINFO) RasEnumDevices rdi(1), cb, count FOR x = 1 TO count IF rdi(x).szDeviceType = "modem" THEN modem = rdi(x).szDeviceName EXIT FOR END IF NEXT r.dwSize = 1768 'Windows 95 OSR2 and later r.dwfOptions = %RASEO_IpHeaderCompression OR _ %RASEO_RemoteDefaultGateway OR _ %RASEO_ModemLights OR %RASEO_SwCompression r.dwCountryId = 0 r.dwCountryCode = 0 r.szAreaCode = areacode r.szLocalPhoneNumber = phone r.dwAlternateOffset = 0 r.ipAddr = %NULL r.ipAddrDns = %NULL r.ipAddrDnsAlt = %NULL r.ipAddrWins = %NULL r.ipAddrWinsAlt = %NULL r.dwFrameSize = %NULL r.dwfNetProtocols = %RASNP_Ip r.dwFramingProtocol = %RASFP_Ppp r.szScript = "" r.szAutodialDll = "" r.szAutodialFunc = "" r.szDeviceType = $RASDT_Modem r.szDeviceName = modem r.szX25PadType = "" r.szX25Address = "" r.szX25Facilities = "" r.szX25UserData = "" r.dwChannels = 0 r.dwReserved1 = 0 r.dwReserved2 = 0 FUNCTION = RasSetEntryProperties(BYVAL %NULL, BYCOPY entry, r, SIZEOF(r), BYVAL %NULL, %NULL) END FUNCTION
------------------
Home of the BASIC Gurus
www.basicguru.com
Comment