Latest available version: IDA and decompilers v8.4.240320sp1 see all releases
Hex-Rays logo State-of-the-art binary code analysis tools
email icon
Execution flow control

Use these functions to run instructions in the debugged process. More...

Functions

bool idaapi step_into (void)
 Execute one instruction in the current thread. More...
 
bool idaapi request_step_into (void)
 Post a step_into() request.
 
bool idaapi step_over (void)
 Execute one instruction in the current thread, but without entering into functions. More...
 
bool idaapi request_step_over (void)
 Post a step_over() request.
 
bool idaapi run_to (ea_t ea, pid_t pid=NO_PROCESS, thid_t tid=NO_THREAD)
 Execute the process until the given address is reached. More...
 
bool idaapi request_run_to (ea_t ea, pid_t pid=NO_PROCESS, thid_t tid=NO_THREAD)
 Post a run_to() request.
 
bool idaapi step_until_ret (void)
 Execute instructions in the current thread until a function return instruction is executed (aka "step out"). More...
 
bool idaapi request_step_until_ret (void)
 Post a step_until_ret() request.
 
bool idaapi set_resume_mode (thid_t tid, resume_mode_t mode)
 How to resume the application. More...
 
bool idaapi request_set_resume_mode (thid_t tid, resume_mode_t mode)
 Post a set_resume_mode() request.
 

Detailed Description

Use these functions to run instructions in the debugged process.

Function Documentation

◆ step_into()

bool idaapi step_into ( void  )
inline

Execute one instruction in the current thread.

Other threads are kept suspended.

TypeAsynchronous function - available as Request
Notificationdbg_step_into

◆ step_over()

bool idaapi step_over ( void  )
inline

Execute one instruction in the current thread, but without entering into functions.

Others threads keep suspended.

TypeAsynchronous function - available as Request
Notificationdbg_step_over

◆ run_to()

bool idaapi run_to ( ea_t  ea,
pid_t  pid = NO_PROCESS,
thid_t  tid = NO_THREAD 
)
inline

Execute the process until the given address is reached.

If no process is active, a new process is started. Technically, the debugger sets up a temporary breakpoint at the given address, and continues (or starts) the execution of the whole process. So, all threads continue their execution!

TypeAsynchronous function - available as Request
Notificationdbg_run_to
Parameters
eatarget address
pidnot used yet. please do not specify this parameter.
tidnot used yet. please do not specify this parameter.

◆ step_until_ret()

bool idaapi step_until_ret ( void  )
inline

Execute instructions in the current thread until a function return instruction is executed (aka "step out").

Other threads are kept suspended.

TypeAsynchronous function - available as Request
Notificationdbg_step_until_ret

◆ set_resume_mode()

bool idaapi set_resume_mode ( thid_t  tid,
resume_mode_t  mode 
)
inline

How to resume the application.

Set resume mode but do not resume process.