PsRemoveBreakPoint

Removes a breakpoint.

Syntax

PULSE_STATUS PsRemoveBreakPoint(
 [in] PPS_ENGINE pEngine,
 [in] uint16_t BreakPointId
);

Parameters

PPS_ENGINE pEngine

An opaque handle to an engine created by the EngCreateEngine function.

uint16_t BreakPointId

The ID of the breakpoint to remove. The breakpoint must have been previously set using the PsSetBreakPoint function.

Return value

If the function succeeds, the return value is PULSE_STATUS_SUCCESS.

If it fails, it returns one of the PULSE_STATUS values. Possible return codes include, but are not limited to, the following:

PULSE_STATUS_INSUFFICIENT_RESOURCES
0xC0000002
One of the memory allocations failed during initialization.
PULSE_STATUS_READ_FAILED
0xC0000003
Transport communication failed during a read operation.
PULSE_STATUS_WRITE_FAILED
0xC0000004
Transport communication failed during a write operation.
PULSE_STATUS_TIMEOUT
0xC0000007
Might happen if
  • Transport I/O timed out.
  • No response was received from the debuggee within the request timeout period.
PULSE_STATUS_INVALID_PARAMETER
0xC0000010
Might happen if
  • The pEngine parameter is NULL.
PULSE_STATUS_INVALID_PACKET
0xC0000031
An invalid or unexpected packet was received in response.
PULSE_STATUS_TARGET_NOT_STOPPED
0xC0000045
An attempt was made to remove the breakpoint while the target was running.
PULSE_STATUS_BREAKPOINT_TABLE_EMPTY
0xC0000100
The breakpoint table is empty.
PULSE_STATUS_BREAKPOINT_NOT_FOUND
0xC0000101
The breakpoint was not found.
PULSE_STATUS_DEVICE_CONNECTION_LOST
0xC0000308
The connection to the transport was lost. Try restarting the engine or the transport.

Remarks

A breakpoint can be removed only while the target is stopped.