IDebugControl::Disassemble method (dbgeng.h)
The Disassemble method disassembles a processor instruction in the target's memory.
Syntax
HRESULT Disassemble(
[in] ULONG64 Offset,
[in] ULONG Flags,
[out, optional] PSTR Buffer,
[in] ULONG BufferSize,
[out, optional] PULONG DisassemblySize,
[out] PULONG64 EndOffset
);
Parameters
[in] Offset
Specifies the location in the target's memory of the instruction to disassemble.
[in] Flags
Specifies the bit-flags that affect the behavior of this method. Currently the only flag that can be set is DEBUG_DISASM_EFFECTIVE_ADDRESS; when set, the engine will compute the effective address from the current register information and display it.
[out, optional] Buffer
Receives the disassembled instruction. If Buffer is NULL, this information is not returned.
[in] BufferSize
Specifies the size, in characters, of the Buffer buffer.
[out, optional] DisassemblySize
Receives the size, in characters, of the disassembled instruction. If DisassemblySize is NULL, this information is not returned.
[out] EndOffset
Receives the location in the target's memory of the instruction following the disassembled instruction.
Return value
This method can also return error values. See Return Values for more details.
Return code | Description |
---|---|
|
The method was successful. |
|
The method was successful. However, Buffer was too small to hold the disassembled instruction and the instruction was truncated to fit. |
Remarks
The assembly language depends on the effective processor type of the target system. For information about the assembly language, see the processor documentation.
The disassembly 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) |