Add Address Breakpoint or Add Data Breakpoint

From RAD Studio
Jump to: navigation, search

Go Up to Run Menu

Go Up to Debug Windows Index


Run > Add Breakpoint > Address Breakpoint
Run > Add Breakpoint > Data Breakpoint

Sets a breakpoint on either an address or a data item. The commands to open both forms of this dialog box are enabled only when you are running your application in Debug mode (F9).


Item Description

Address

Specifies the address for the address breakpoint. When the address is executed, the program execution will halt if the condition (optional) evaluates to true and the pass count (optional) has been completed. If the address can be correlated to a source line number, the address breakpoint is created as a source breakpoint.

Length (for data breakpoint only)

Specifies the length of the data breakpoint, beginning at "Address". The length is automatically calculated for standard data types.

Condition

Specifies a conditional expression that is evaluated each time the breakpoint is encountered. Program execution stops when the expression evaluates to true. Enter a conditional expression to stop program execution. Enter any valid language expression. All symbols in the expression must be accessible from the breakpoint's location. Functions are valid if they return a Boolean type. For data breakpoints, if no condition is set, the breakpoint is hit when any change is made to the data in the range specified in the Length field.

Thread

Specifies the thread to which the breakpoint is to be applied. When a multithreaded application is running in debug mode, you can select from the current thread numbers (for numbered threads) or thread names (for named threads).

Pass count

Stops program execution at a certain line number after a specified number of passes. Enter the number of passes. The debugger increments the pass count each time the line containing the breakpoint is encountered. When the pass count equals the specified number, the debugger pauses program execution. For example, if the pass count is set to 3, you will see 0 of 3, 1 of 3, 2 of 3, then 3 of 3 in the pass count. Program execution stops at 3 of 3.

Because the debugger increments the count with each pass, you can use the count to determine the iteration of a loop that fails. Set the pass count to the maximum loop count and run your program. When the program fails, you can calculate the number of loop iterations by examining the number of passes that occurred. When you use pass counts with conditions, program execution pauses the nth time that the conditional expression is true. The debugger decrements the pass count only when the conditional expression is true.

Group

Creates a breakpoint group, and makes this breakpoint a member of the group. Using breakpoint groups is useful for performing a similar set of actions on all breakpoints within a group. To create a group, enter a name in this field. To use an existing group, select a group from the drop-down list.

Advanced

Expands the dialog box to include fields for associating actions with breakpoints.

Item Description

Break

Halts execution; the traditional and default action of a breakpoint.

Ignore subsequent exceptions

Ignores all subsequent exceptions raised by the current process during the current debug session (the debugger will not stop on any exception). Use this with Handle subsequent exceptions as a pair. You can surround specific blocks of code with the Ignore/Handle pair to skip any exceptions which occur in that block of code.

Handle subsequent exceptions

Handles all subsequent exceptions raised by the current process during the current debug session (the debugger will stop on exceptions based on the current exception settings in Tools > Options > Debugger Options > Embarcadero Debuggers > Language Exceptions. This option does stop on all exceptions. Use it to turn on normal exception behavior after another breakpoint disabled normal behavior using the Ignore subsequent exceptions option.

Log message

Writes the specified message to the event log. Enter the message that you want to log.

Eval expression

Evaluates the specified expression and, because Log result is checked by default, writes the result of the evaluation to the event log. Uncheck Log result to evaluate without logging.

Log result

If text is entered in Eval expression, writes the result of the evaluation in the to the event log. If unchecked, the evaluation is not logged.

Enable group

Enables all breakpoints in the specified group. Select the group name.

Disable group

Disables all breakpoints in the specified group. Select the group name.

Log Call Stack

Displays all or part of the call stack in the Event Log window when a breakpoint is encountered:

  • Entire Stack displays all of the call stack.
  • Partial Stack displays only the number of frames specified in Number of frames.
  • Number of Frames specifies the number of frames to display if Partial Stack is selected.


See Also