Microsoft KB Archive/110921

= How to Debug .PLB and .FLL Source Code =

Article ID: 110921

Article Last Modified on 12/3/2003

-

APPLIES TO


 * Microsoft Visual FoxPro 3.0 Professional Edition
 * Microsoft FoxPro Library Construction Kit 2.5b for MS-DOS
 * Microsoft FoxPro Library Construction Kit 2.6 for MS-DOS
 * Microsoft FoxPro Library Construction Kit 2.6
 * Microsoft FoxPro Library Construction Kit 2.6

-



This article was previously published under Q110921



SUMMARY
In order to step through the source code of a .PLB or .FLL file, you must compile the source code with the _BreakPoint function. This macro generates the debugger breakpoint instruction Interrupt 3h. (NOTE: All interrupts are given in hexadecimal.)

Once this is done, you must start the debugger and execute FoxPro from within the debugger. After FoxPro has been started, it can be used normally, which means you must load the library and then call the functions from within the library that have the _BreakPoint function. The library will execute normally until the _BreakPoint function is reached. When this statement is reached, control will be transferred to the debugger. At this point, you will be able to step through the .C source code. When the code terminates, control will then be transferred back to FoxPro.



MORE INFORMATION
The following are step-by-step instructions for stepping through the source code of a .PLB or .FLL file. Depending on your version of FoxPro, use one of the following instructions:

FoxPro 2.x

 * 1) Include the _BreakPoint function in the .C source code.
 * 2) Start the debugger.
 * 3) Start FoxPro from within the debugger.
 * 4) Load the library and call the functions.
 * 5) Step through the C source code and then return to FoxPro.
 * 6) Quit FoxPro.
 * 7) Quit the debugger.

Visual FoxPro and Microsoft Visual C++ 2.0

 * 1) Add the _BreakPoint in the source code
 * 2) Compile and build a debug version of the .DLL
 * 3) Start Visual FoxPro and issue the 'SET LIBRARY TO '
 * 4) Call the function in the library (for example ?HELLO )

When the code hits the _BreakPoint instruction you will get an "Application Error" with options for 'OK' to terminate and 'Cancel' to debug. Picking the 'Cancel' option will allow you to start VC++ with the debugger active and to step through the sourcecode.

