Share via


IeXdi2Exec::RegisterEmbeddedBpOpCode (Windows Embedded CE 6.0)

1/5/2010

This method registers an embedded code breakpoint op code in the list of recognized breakpoint op codes.

Syntax

HRESULT RegisterEmbeddedBpOpCode(
  [in] DWORD dwOpCodeSizeInByte,
  [in, size_is(dwOpCodeSizeInByte)] const BYTE* pbOpCode,
  [in] DWORD dwExecMode,
  [in] BOOL fToBeUsedAsSwBp
);

Parameters

  • dwOpCodeSizeInByte
    Size of the op code in bytes.
  • pbOpCode
    Buffer containing the trap op code to register.
  • dwExecMode
    Processor mode this op code corresponds to.

    For example, the trap op code may be different in 16-bit mode than in 32-bit mode on processors such as ARM and MIPS that have two modes.

    By convention, dwExecMode should be 0 for 32-bit mode (default), and 1 for 16-bit mode.

  • fToBeUsedAsSwBp
    Indicator that, if TRUE, indicates this op code should be used when the eXDI service needs to set a software breakpoint.

    If TRUE, the op-code replaces the default op code or any previously registered op code with fToBeUsedAsSwBp TRUE until unregistered. Each value of dwExecMode has a corresponding op code.

Return Value

The following table shows return values for this method.

Value Description

S_OK

Indicates the function was successful.

E_FAIL

Indicates an unspecified failure.

E_NORESAVAILABLE

Indicates a breakpoint resource was not available and the method cannot instantiate all breakpoints.

E_OUTOFMEMORY

Failed to allocate necessary memory.

E_INVALIDARG

Indicates one or more invalid arguments.

EXDI_E_COMMUNICATION

Indicates a communication error between host driver and debugging target.

EXDI_I_ALREADYREGISTERED

Indicates the op code has already been registered.

Remarks

This method enables the eXDI service to resume execution from an embedded breakpoint without requiring the client to move the target instruction pointer to the next instruction.

The eXDI service keeps a list of embedded breakpoint op codes, but only one op code may be used per execution mode for setting software breakpoints.

Requirements

Header eXDI2.h
Library ole32.lib, oleaut32.lib
Windows Embedded CE Windows CE 5.0 and later

See Also

Reference

IeXdi2Exec
IeXDI2 Interfaces