- 献词
- 致谢
- 前言
- 第一部分 IDA 简介
- 第 1 章 反汇编简介
- 第 2 章 逆向与反汇编工具
- 第 3 章 IDA Pro 背景知识
- 第二部分 IDA 基本用法
- 第 4 章 IDA 入门
- 第 5 章 IDA 数据显示窗口
- 第 6 章 反汇编导航
- 第 7 章 反汇编操作
- 第 8 章 数据类型与数据结构
- 第 9 章 交叉引用与绘图功能
- 第 10 章 IDA 的多种面孔
- 第三部分 IDA 高级应用
- 第 11 章 定制 IDA
- 第 12 章 使用 FLIRT 签名来识别库
- 第 13 章 扩展 IDA 的知识
- 第 14 章 修补二进制文件及其他 IDA 限制
- 第四部分 扩展 IDA 的功能
- 第 15 章 编写 IDA 脚本
- 第 16 章 IDA 软件开发工具包
- 第 17 章 IDA 插件体系结构
- 第 18 章 二进制文件与 IDA 加载器模块
- 第 19 章 IDA 处理器模块
- 第五部分 实际应用
- 第 20 章 编译器变体
- 第 21 章 模糊代码分析
- 第 22 章 漏洞分析
- 第 23 章 实用 IDA 插件
- 第六部分 IDA 调试器
- 第 24 章 IDA 调试器
- 第 25 章 反汇编器/ 调试器集成
- 第 26 章 其他调试功能
- 附录 A 使用 IDA 免费版本 5.0
- 附录 B IDC/SDK 交叉引用
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
15.3 关联 IDC 脚本与热键
有时开发一个脚本后,你会惊奇地发现,你必须进行一两次键击才能访问这个脚本。这时,你可能希望使用一个热键组合,以迅速激活脚本。幸好 IDA 提供了一种分配热键的简单方法。每次启动 IDA ,它都会执行/idc/ida.idc 中的脚本。这个脚本的默认版本包含一个空的 main 函数,因此,它不执行任何操作。为了将热键与脚本关联起来,你需要在 ida.idc 文件中添加两行代码。在第一行代码中,必须添加一个 include
指令,将脚本文件包含在 ida.idc 文件中。在第二行代码中,必须在 main
函数中添加一个对 AddHotkey
函数的调用,将特定的热键与 IDC 脚本关联起来。修改后的 ida.idc 文件如下所示。
#include #include static main() { AddHotkey("z", "MyAmazingFunc"); //Now 'z' invokes MyAmazingFunc }
如果你尝试与脚本关联的热键已经分配给另一项 IDA 操作(菜单热键或插件激活热键),这时, AddHotkey
函数将悄无声息地失败,除了在你按下热键组合后,函数不会运行外,你无法通过其他方式检测到这种失败。
这里你需要记住两个要点:第一,IDC 脚本的标准存储目录为/idc;第二,不能将脚本函数命名为 main
。如果希望 IDA 能够轻易找到脚本,可以将它复制到/idc 目录中。如果要将脚本文件存储在其他位置,你需要在 include
语句中指定脚本的完整路径。在测试脚本时,使用 main
函数以独立程序的方式运行脚本会有好处。但是,一旦你准备将脚本与热键关联起来,就不能使用 main
这个名称,因为它会与 ida.idc 中的 main
函数相互冲突。必须重命名 main
函数,并在调用 AddHotkey
时使用新的名称。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论