#include <string>
#include <pro.h>
#include <loader.hpp>
#include <dbg.hpp>
int idaapi IDAP_init(void)
{
msg("init %s\n",inf.procname); //获取处理器架构 inf为loader.hpp中的全局变量
return PLUGIN_KEEP;
}
bool idaapi run(size_t arg)
{
for(int i=0; i < get_bpt_qty(); ++i){ //get_bpt_qty()获取断点数量
bpt_t brkpnt;
getn_bpt(i,&brkpnt); //按索引取断点信息
if(brkpnt.type == BPT_SOFT) //判断断点类型
msg("Software breakpoint found at %llx\n",brkpnt.ea);
else
msg("Hardware breakpoint found at %llx\n",brkpnt.ea);
}
procinfo_vec_t pifv;
get_processes(&pifv); //获取所有进程信息
for(process_info_t pitf : pifv){
msg("ID: %d, Name: %s\n",pitf.pid,pitf.name.c_str()); //打印进程名和进程ID
}
return true;
}
void idaapi term(void){}
char IDAP_comment[] = "This is my test
ida 插件学习(6) 打印断点信息和进程信息
最新推荐文章于 2022-05-20 10:09:48 发布