IDebugControl4::D isassembleWide 메서드(dbgeng.h)
DisassembleWide 메서드는 대상의 메모리에서 프로세서 명령을 디스어셈블합니다.
구문
HRESULT DisassembleWide(
[in] ULONG64 Offset,
[in] ULONG Flags,
[out, optional] PWSTR Buffer,
[in] ULONG BufferSize,
[out, optional] PULONG DisassemblySize,
[out] PULONG64 EndOffset
);
매개 변수
[in] Offset
디스어셈블할 명령의 대상 메모리에 있는 위치를 지정합니다.
[in] Flags
이 메서드의 동작에 영향을 주는 비트 플래그를 지정합니다. 현재 설정할 수 있는 유일한 플래그는 DEBUG_DISASM_EFFECTIVE_ADDRESS. 설정되면 엔진은 현재 레지스터 정보의 유효 주소를 계산하고 표시합니다.
[out, optional] Buffer
디스어셈블된 명령을 받습니다. Buffer가 NULL이면 이 정보가 반환되지 않습니다.
[in] BufferSize
버퍼 버퍼의 크기를 문자 단위로 지정합니다.
[out, optional] DisassemblySize
디스어셈블된 명령의 크기를 문자 단위로 받습니다. DisassemblySize가 NULL이면 이 정보가 반환되지 않습니다.
[out] EndOffset
디스어셈블된 명령에 따라 대상의 메모리에 있는 명령의 위치를 받습니다.
반환 값
이 메서드는 오류 값을 반환할 수도 있습니다. 자세한 내용은 반환 값을 참조하세요.
반환 코드 | Description |
---|---|
|
메서드를 성공적으로 수행했습니다. |
|
메서드를 성공적으로 수행했습니다. 그러나 버퍼 가 너무 작아서 디스어셈블된 명령을 저장할 수 없으며 명령이 적합하게 잘렸습니다. |
설명
어셈블리 언어는 대상 시스템의 유효 프로세서 유형에 따라 달라집니다. 어셈블리 언어에 대한 자세한 내용은 프로세서 설명서를 참조하세요.
GetAssemblyOptions에서 반환된 디스어셈블리 옵션은 이 메서드의 작업에 영향을 줍니다.
디버거 애플리케이션에서 어셈블리를 사용하는 방법에 대한 개요는 어셈블리 모드에서 디버깅을 참조하세요. 디버거 엔진 API에서 어셈블리를 사용하는 방법에 대한 자세한 내용은 어셈블리 및 디스어셈블 지침을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | dbgeng.h(Dbgeng.h 포함) |