IeXdi2Exec::RegisterEmbeddedBpOpCode (Windows CE 5.0)

Send Feedback

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

HRESULT RegisterEmbeddedBpOpCode(  [in] DWORD dwOpCodeSizeInByte,  [in, size_is(dwOpCodeSizeInByte)] const BYTE* pbOpCode,  [in] DWORDdwExecMode,  [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 Values

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

OS Version: Windows CE 5.0 and later.
Header: eXDI2.h.
Link Library: ole32.lib, oleaut32.lib.

See Also

IeXDI2 Interfaces

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.