The assemblies included with this package allow for manipulation of the Microsoft Windows Remote Access Service (RAS) system. All of the components exposed by this assembly are designed to integrate directly with Microsoft Visual Studio. You can use them from other editors, however the rich editing capabilities of Visual Studio will not be available. These components can be added to the toolbox and dragged onto your Windows Forms application, or dropped into your Windows Service with nothing more than a couple clicks of the mouse.
Which components do what?
One of the questions you might be asking yourself is, "well this is great, but what in this thing do I use for what?". Hopefully this question can be addressed here. Due to the number of objects in the project it may seem daunting trying to find which component you need to use when. The following components are available in all build types.
- RasAutoDialManager - This component interacts with the Windows RAS AutoDial manager.
- RasConnectionWatcher - This component monitors the connections active on the machine, and is a unique feature of this project. You will not find this component available anywhere else!
- RasDialDialog - This component displays a user interface to dial a connection.
- RasDialer - This component is designed to dial any type of connection that Windows can dial itself. However, custom VPN connections like the Cisco VPN system do not use Windows to dial the connection and therefore cannot be dialed from this project.
- RasEntryDialog - This component displays a user interface to create or modify a phone book entry.
- RasPhoneBook - This component is designed to manipulate the Windows phone books. Adding, removing, and modifying entries is done through this class. You can also modify credentials stored with the entry.
- RasPhoneBookDialog - This component displays the primary dial-up networking dialog box.
The following components are available for WINXP and later build types.
- CredentialPromptDialog - This component provides a common user interface for requesting user credentials.
Known Limitations
- Windows Presentation Foundation (WPF)
There are difficulties when using DotRas with WPF surrounding the marshalling of threads from the multi-threaded components. The ISynchronizeInvoke interface is not used in WPF, instead the Dispatcher type is used for marshalling threads. For help with using the components with WPF, see the DialingVpnEntry WPF example.