ah (Assertion Handling)

The ah command controls the assertion handling status for specific addresses.

ahb [Address] 
ahi [Address] 
ahd [Address] 



Breaks into the debugger if an assertion fails at the specified address.

Ignores an assertion failure at the specified address.


Deletes any assertion-handling information at the specified address. This deletion causes the debugger to return to its default state for that address.


Specifies the address of the instruction whose assertion-handling status is being set. If you omit this parameter, the debugger uses the current program counter.


Deletes all assertion-handling information for the current process.


Displays the current assertion-handling settings.


Item Description
Modes user mode, kernel mode
Targets live debugging only
Platforms all

Additional Information

For more information about break status and handling status, descriptions of all event codes, a list of the default status for all events, and details about other methods of controlling this status, see Controlling Exceptions and Events.


The ah\* command controls the assertion handling status for a specific address. The sx* asrt command controls the global assertion handling status. If you use ah\* for a certain address and then an assert occurs there, the debugger responds based on the ah\* settings and ignores the sx* asrt settings.

When the debugger encounters an assertion, the debugger first checks whether handling has been configured for that specific address. If you have not configured the handling, the debugger uses the global setting.

The ah\* command affects only the current process. When the current process ends, all status settings are lost.

Assertion handling status affects only STATUS_ASSERTION_EXCEPTION exceptions. This handling does not affect the kernel-mode ASSERT routine.