IDA脚本

这篇具有很好参考价值的文章主要介绍了IDA脚本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

IDA集成了一个脚本引擎,用户可以通过编程对IDA实现全面控制

执行脚本

执行脚本的三种方法:

1.

File->Script File

IDA会显示一个选择文件的对话框,让你选择想要运行的脚本

运行一个新的脚本,这个程序会被添加到最近运行的脚本列表

View->Recent Scripts可以查看.

2.

File->IDC Command

File->Python Command

(IDA7.2版本为File->Script Command)

可以写几条语句执行,不单独创建一个脚本文件

IDA脚本

3.IDC的命令行也可以执行脚本

IDA脚本

 IDC语言

要速成IDC脚本的话,看我下面这个博客完全足够

IDC语言_御麟蹬辉的博客-CSDN博客

IDC语言借用了C语言的很多语法

使用同C语言一致的注释方式/* */  //

IDC变量

弱类型语言,变量没有明确类型

使用三种数据类型:整数,字符串和浮点值

局部变量 用auto

全局变量 用 extern,可以声明任何函数内部和外部

extren outsideGlobal;

static main(){
        extern insideGlobal;

        outsideGlobal="Global";

        insideGlobal=1.23;

}

IDC表达式

支持除+=,*=,>>=等符合赋值运算符和三元运算符( ? :)外的所有C中的运算符

可以使用分片的方式操作字符串

auto str="Welcome to IDC"
s1=str[:7]; //s1="Welcome"

s2=str[8:10] //s2="to"

s3=str[11:] //s3="IDC"

条件控制

支持除switch之外的所有C语言条件控制语句

支持for while if else

IDC函数

使用static关键字

并且形式参数没有类型

static func(x,y,z){

        auto a,b,c;

}

5.6版本最后的可以传递地址

传地址还是传值取决于调用时候,若传地址参数加&

声明函数时候是一致的

func(q,w,e)

func(&q,&w,e)

IDC类和对象

 与C语言的区别:

没有访问权限说明符

创建一个数据成员只需要给它赋值就可以文章来源地址https://www.toymoban.com/news/detail-453210.html

class Student{
        Student(age,id){
                this.Age=age;

                this.ID=id;

        }

        ~Student(){}

        add(){
                this.Age++;

        }

};

static main(){

        auto stu1=Student(18,202100342);

        stu1.add();

        stu1.name="Alice";   //这个对象现在新增了一个name的数据成员,这个类没有新增数据成员

}

到了这里,关于IDA脚本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 学习和长跑很类似,长跑可以通过训练提高跑步的速度和时长,那么学习也可以通过训练提高学习的速度和时长吗?

    问题描述:学习和长跑很类似,长跑可以通过训练提高跑步的速度和时长,那么学习也可以通过训练提高学习的速度和时长吗?另外,学习和长跑一样,后半程会出现乏力的现象,但是只要坚持下去,虽然速度慢了下来,但是总归可以冲向终点吗? 问题解答: 首先,就像长

    2024年02月22日
    浏览(44)
  • 设备分散怎么办? 可以通过链路层发现协议

    大型网络中,连接清晰是很重要滴。网络越大,逻辑上和物理上都越难理清。再加上还有冗余链路和链路聚合,会大大增加理清网络中设备互连情况的难度。而且,问题还不止于此。混合使用来自不同供应商的网络产品,会让设备发现协议无所适从。 首先,我要讲一个背景故

    2024年02月07日
    浏览(48)
  • 小程序可以通过以下几种方式下发消息

    1.模板消息 小程序可以通过模板消息向用户发送通知,例如订单状态更新、活动提醒等。开发者需要先在小程序后台设置好模板消息,并获取到模板消息的模板ID。然后在代码中调用相应的API,将模板消息的内容填充并发送给用户。 以下是一个示例代码,用于发送小程序模板

    2024年02月07日
    浏览(40)
  • 语音识别功能测试:90%问题,可以通过技术解决

    现在市面上的智能电子产品千千万,为了达到人们使用更加方便的目的,很多智能产品都开发了语音识别功能,用来语音唤醒进行交互;另外,各大公司也开发出来了各种智能语音机器人,比如小米公司的“小爱”,百度公司的“小度”,三星公司的“bixby”,苹果的“siri”

    2024年02月03日
    浏览(40)
  • Vue3:通过路由写多个页面,通过不同的路径可以进入不同的页面

    Vue3:想通过路由写2个页面,不同的路径可以进入不同的页面 1、创建Vue3项目 通过脚手架创建一个Vue3的项目,然后在此基础上对文件进行增删改,修改成自己需要的项目框架 2、views文件夹 对应 页面文件 如果需要写2个页面,则在views文件夹里面创建2个.vue文件 可以在.vue文件

    2024年02月11日
    浏览(42)
  • 电脑可以通过蓝牙发送文件吗?电脑蓝牙怎么发送文件

    蓝牙(bluetooth)是一种支持设备短距离通信的无线电技术。能在包括移动电话、PDA、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。蓝牙技术让数据传输变得更加迅速高效,为无线通信拓宽道路。随着蓝牙技术的发展,其应用领域越来越广泛,那么,

    2024年02月09日
    浏览(70)
  • 制造企业可以通过数字工厂管理系统降低采购成本吗

    制造企业可以通过数字工厂管理系统降低采购成本。制造业数字工厂系统是一种基于数字化技术的管理系统,可以帮助企业实现生产过程的数字化管理,提高生产效率和降低生产成本。下面具体介绍数字工厂管理系统如何降低制造企业的采购成本。   一、优化采购计划 数字

    2024年02月11日
    浏览(44)
  • 超实用:通过文字就可以操纵这款AI表格

    公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 今天给大家分享超实用的AI表格 ChatExcel ,这个工具是由北大团队在2022年3月开始开发的AI表格处理神器,上传你的表格后,只需要用文字描述你的需求,不需要你懂excel函数,AI就会自动帮你

    2024年02月05日
    浏览(45)
  • python函数可以通过列表索引放到button事件 by chatgpt

    Python函数可以通过列表索引放到按钮事件中。在按钮事件处理函数中,你可以使用`event.widget`属性获取触发事件的按钮,然后使用`grid_info()`方法获取按钮的行和列索引,最后使用索引从列表中获取函数并调用它。   以下是示例代码:   ```python import tkinter as tk   # 创建主窗口

    2023年04月25日
    浏览(56)
  • 将一张RGB图像转换为BGR格式可以通过以下步骤实现

    读取图像:使用图像处理库(如OpenCV)读取一张RGB格式的图像,并将其存储为NumPy数组。 转换通道顺序:使用np.transpose函数将图像数组的通道顺序从RGB转换为BGR。 在这里,np.transpose函数的第一个参数是图像数组,第二个参数是元组,表示要交换的维度顺序。由于RGB格式的图像

    2024年02月11日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包