IDebugControl3::D isassemble 方法 (dbgeng.h)

反汇编方法在目标内存中反汇编处理器指令。

语法

HRESULT Disassemble(
  [in]            ULONG64  Offset,
  [in]            ULONG    Flags,
  [out, optional] PSTR     Buffer,
  [in]            ULONG    BufferSize,
  [out, optional] PULONG   DisassemblySize,
  [out]           PULONG64 EndOffset
);

参数

[in] Offset

指定要反汇编的指令的目标内存中的位置。

[in] Flags

指定影响此方法行为的位标志。 目前唯一可以设置的标志是DEBUG_DISASM_EFFECTIVE_ADDRESS;设置后,引擎将从当前寄存器信息中计算有效地址并显示它。

[out, optional] Buffer

接收反汇编指令。 如果 BufferNULL,则不会返回此信息。

[in] BufferSize

指定 缓冲区 的大小(以字符为单位)。

[out, optional] DisassemblySize

接收反汇编指令的大小(以字符为单位)。 如果 DisassemblySizeNULL,则不会返回此信息。

[out] EndOffset

按照反汇编指令接收目标内存中指令的位置。

返回值

此方法还可以返回错误值。 有关更多详细信息 ,请参阅返回值

返回代码 说明
S_OK
方法成功。
S_FALSE
方法成功。 但是, 缓冲区 太小,无法容纳反汇编的指令,并且指令被截断以适应。

注解

程序集语言取决于目标系统的有效处理器类型。 有关汇编语言的信息,请参阅处理器文档。

由 GetAssemblyOptions 返回的反汇编选项会影响此方法的操作。

有关在调试器应用程序中使用程序集的概述,请参阅 在程序集模式下调试。 有关将程序集与调试器引擎 API 配合使用的详细信息,请参阅 汇编和反汇编说明

要求

要求
目标平台 桌面
标头 dbgeng.h (包括 Dbgeng.h)

另请参阅

组装

GetAssemblyOptions

IDebugControl

IDebugControl2

IDebugControl3

u(取消汇编)