Debugging Tools for Windows |
The Assemble and AssembleWide methods assemble a single processor instruction. The assembled instruction is placed in the target's memory.
HRESULT
IDebugControl::Assemble(
IN ULONG64 Offset,
IN PCSTR Instr,
OUT PULONG64 EndOffset
);
HRESULT
IDebugControl4::AssembleWide(
IN ULONG64 Offset,
IN PCWSTR Instr,
OUT PULONG64 EndOffset
);
#ifdef UNICODE
#define AssembleT AssembleWide
#else
#define AssembleT Assemble
#endif
These methods can also return error values. See Return Values for more details.
Assemble is available in all versions of IDebugControl. AssembleWide is available in IDebugControl4 and later versions.
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.
Headers: Defined in Dbgeng.h. Include Dbgeng.h.
Disassemble, GetAssemblyOptions, a (Assemble)