IDebugControl::Assemble method (dbgeng.h)

The Assemble method assembles a single processor instruction. The assembled instruction is placed in the target's memory.

Syntax

HRESULT Assemble(
  [in]  ULONG64  Offset,
  [in]  PCSTR    Instr,
  [out] PULONG64 EndOffset
);

Parameters

[in] Offset

Specifies the location in the target's memory to place the assembled instruction.

[in] Instr

Specifies the instruction to assemble. The instruction is assembled according to the target's effective processor type (returned by SetEffectiveProcessorType).

[out] EndOffset

Receives the location in the target's memory immediately following the assembled instruction. EndOffset can be used when assembling multiple instructions.

Return value

Return code Description
S_OK
The method was successful.
 

This method can also return error values. See Return Values for more details.

Remarks

The assembly language depends on the effective processor type of the target machine. For information about the assembly language, see the processor documentation.

Note   The Assemble and AssembleWide methods are not supported on some architectures, and on some other architectures not all instructions are supported.
 
The assembly language options--returned by GetAssemblyOptions--affect the operation of this method.

For an overview of using assembly in debugger applications, see Debugging in Assembly Mode. For more information about using assembly with the debugger engine API, see Assembling and Disassembling Instructions.

Requirements

Requirement Value
Target Platform Desktop
Header dbgeng.h (include Dbgeng.h)

See also

Disassemble

GetAssemblyOptions

IDebugControl

IDebugControl2

IDebugControl3