Using RAS, part 2
Last month, we gave you an introduction to Microsoft's Remote Access Service (RAS) API. We showed you how to make a connection, detect an existing connection, and how to enumerate active connections. This month, we'll continue our discussion on RAS by covering phonebooks in more detail, including how to add, edit, and delete phonebook entries. We'll also introduce you to some of the dialogs that RAS provides for use in your applications.
Click here for more.

Spawning external applications
The Inprise newsgroups are a great source of information for C++Builder programmers. It seems that barely a day goes by without someone asking the question, "How do I execute an external application from my program?" This article will explain how to spawn an external application from within your program using the ShellExecute, WinExec, and CreateProcess Windows API functions. We'll also show you how to make your application wait until a spawned external program has terminated before continuing on.
Click here for more.


Using callbacks in DLLs
By far, the most common use of DLLs is where the calling program simply calls functions in the DLL. Sometimes, however, the calling application needs periodic information from the DLL while a process is taking place. Callbacks allow you to do just that. This article will show you how to implement a callback function in a DLL.
Click here for more.

Tracking down exporting problems
Functions and classes are made public by exporting them from the DLL. Once exported, other functions in the DLL, executable applications, and other DLLs can call functions and classes. However, problems can arise when exporting.

If you have trouble exporting funtions or classes, run the TDUMP utility on the DLL. The TDUMP will provide information on symbols that are exported from the DLL. Examine this section of output from TDUMP to better understand where the problem occured.


Copyright © 1999, ZD Inc. All rights reserved. ZD Journals and the ZD Journals logo are trademarks of ZD Inc. Reproduction in whole or in part in any form or medium without express written permission of ZD Inc. is prohibited. All other product names and logos are trademarks or registered trademarks of their respective owners.