移植ida loader插件过程中,ida4.9-6.x API到IDA 7.x API碰到的问题

1、MAX_FILE_FORMAT_NAME宏定义找不到
原因:
The prototype for ‘accept_file()’ has been changed from:

int idaapi accept_file(linput_t *li, char fileformatname[MAX_FILE_FORMAT_NAME], int n);
to:

int idaapi accept_file(qstring *fileformatname, qstring *processor, linput_t *li, const char *filename);

2、describe没有了,用add_extra_line替换

3、ulong没了,用int64替换

4、startIP要替换成start_ip

5、askyn_cv替换成vask_yn

6、SETPROC_ALL替换成SETPROC_USER

7、beginEA替换成start_ea

8、ida7.x插件不支持x86架构,需要改成x64才能链接ida.lib成功

9、ida7.x以上loader插件的accept_file不需要再设置默认处理器类型

详细变化英文文档
https://www.hex-rays.com/product … pi70_porting_guide/

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注