Condividi tramite


Metodo IDebugControl::D isassemble (dbgeng.h)

Il metodo Disassemble disassembla un'istruzione del processore nella memoria della destinazione.

Sintassi

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

Parametri

[in] Offset

Specifica il percorso nella memoria della destinazione dell'istruzione da disassemblare.

[in] Flags

Specifica i flag di bit che influiscono sul comportamento di questo metodo. Attualmente l'unico flag che può essere impostato è DEBUG_DISASM_EFFECTIVE_ADDRESS; se impostato, il motore calcola l'indirizzo effettivo dalle informazioni del registro corrente e lo visualizza.

[out, optional] Buffer

Riceve l'istruzione disassemblata. Se buffer è null, queste informazioni non vengono restituite.

[in] BufferSize

Specifica le dimensioni, in caratteri, del buffer buffer buffer.

[out, optional] DisassemblySize

Riceve le dimensioni, in caratteri, dell'istruzione disassemblata. Se DisassemblySize è null, queste informazioni non vengono restituite.

[out] EndOffset

Riceve la posizione nella memoria della destinazione dell'istruzione che segue l'istruzione disassemblata.

Valore restituito

Questo metodo può anche restituire valori di errore. Per altri dettagli, vedere valori restituiti.

Codice restituito Descrizione
S_OK
Il metodo ha avuto esito positivo.
S_FALSE
Il metodo ha avuto esito positivo. Tuttavia, buffer era troppo piccolo per contenere l'istruzione disassemblata e l'istruzione è stata troncata per adattarsi.

Osservazioni

Il linguaggio dell'assembly dipende dal tipo di processore effettivo del sistema di destinazione. Per informazioni sul linguaggio assembly, vedere la documentazione del processore.

Le opzioni disassembly restituite da GetAssemblyOptionsinfluiscono sull'operazione di questo metodo.

Per una panoramica dell'uso dell'assembly nelle applicazioni del debugger, vedere Debug in modalità assembly. Per altre informazioni sull'uso dell'assembly con l'API del motore di debugger, vedere Assembling and Disassembling Instructions.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione dbgeng.h (include Dbgeng.h)

Vedere anche

Assemblare

GetAssemblyOptions

IDebugControl

IDebugControl2

IDebugControl3

u (unassemble)