Example on how Dial-Up Networking uses the registry

The following is the default registry layout when Dial-Up Networking is first installed.


HKEY_LOCAL_MACHINE/SYSTEM/SERVICES/REMOTEACCESS/AUTHENTICATION
CLASS
COM
PPPMAC
DRIVERS
PPPMAC
0 = "PPP"
1 = "RAS"
2 = "NWC"
SMM_FILES
NWC
Desc = "NRN: Netware Connect"
Path = "rasapi32.dll"
Options = 04 00 00 00
Protocols = 02 00 00 00
Usage = 01 00 00 00
PPP
Desc = "PPP: Windows 95, Windows NT 3.5, Internet"
Path = "rasapi32.dll"
Options = 17 00 00 00
Protocols = 07 00 00 00
Usage = 03 00 00 00
RAS
Desc = "Windows for Workgroup and Windows NT 3.1"
Path = "rasapi32.dll"
Options = 04 00 00 00
Protocols = 01 00 00 00
Usage = 03 00 00 00

The default Dial-Up Adapter (Microsoft Dial-Up Adapter) is PPPMAC. PPPMAC handles a modem device and has three default Session Management Modules--NWC, PPP, and RAS. When the modem connection was established, Dial-Up Networking gets the device class of the modem from TAPI's lineGetID call for the "ndis" type. The Unimodem service provider returns the "COM" device class for the modem. Dial-Up Networking looks for the Dial-Up adapters from the .../REMOTEACCESS/AUTHENCATION/CLASS/COM key and finds PPPMAC as the only adapter. Then Dial-Up Networking enumerates the Session Management Modules for PPPMAC from the .../REMOTEACCESS/AUTHENCATION/-DRIVERS/PPPMAC key, starting from PPP type. When Dial-Up Networking is ready to hand off the control to the SMM, it looks up the Path value in the .../REMOTEACCESS/AUTHENCATION/SMM_FILES/PPP key for the DLL name, loads it and starts the session management phase.