IDA Pro > IDA Pro教程 > 技术问题 > IDA pro撤消操作(Undo an action)

IDA pro撤消操作(Undo an action)

发布时间:2023-04-25 11: 38: 37

 Action    name: Undo

This command reverts the database to the state before executing the last user action. It is possible to apply Undo multiple times, in this case multiple user actions will be reverted.
Please note the entire database is reverted, including all modifications that were made to the database after executing the user action and including the ones that are not connected to the user action. For example, if a third party plugin modified the database during or after the user action, this modification will be reverted. In theory it is possible to go back in time to the very beginning and revert the database to the state state that was present immediately after performing the very first user action. However, in practice the undo buffers overflow because of the changes made by autoanalysis. Autoanalysis generates copious amounts of undo data. Also please note that maintaining undo data during autoanalysis slows it down a bit. In practice it is not a big deal because the limit on the undo data is reached quite quickly (in a matter of minutes). Therefore, if during analysis the user does not perform any actions that modify the database, the undo feature will turn itself off temporarily.

However, if you prefer not to collect undo data at all during the initial autoanalysis, just turn off the UNDO_DURING_AA parameter in ida.cfg.

The configuration file ida.cfg has 2 more undo-related parameters:

 UNDO_MAXSIZE  max size of undo buffers; default: 128MB
               once this limit is reached, the undo info about the oldest
               user action will be forgotten.
 UNDO_DEPTH    max number of user actions to remember; default: 1000000
               if set to 0, the undo feature will be unavailable.
Since there is a limit on the size of undo buffers, any action, even the tiniest, may become non-undoable after some time. This is true because the analysis or plugins may continue to modify the database and overflow the buffers. Some massive actions, like deleting a segment, may be non-undoable just because of the sheer amount of undo data they generate.
Please note that Undo does not affect the state of IDC or Python scripts. Script variables will not change their values because of Undo. Also nothing external to the database can be changed: created files will not be deleted, etc.

Some actions cannot be undone. For example, launching a debugger or resuming from a breakpoint cannot be undone.

See also Redo Reset Undo Disable Undo Open undo history

 

中文翻译:

名称:Undo此命令将数据库恢复到执行最后一个用户操作之前的状态。可以多次应用“撤消”,在这种情况下,将恢复多个用户操作。

请注意,整个数据库将被恢复,包括执行用户操作后对数据库所做的所有修改,以及未连接到用户操作的修改。例如,如果第三方插件在
用户操作期间或之后修改了数据库,则此修改将
被恢复。理论上,可以回到最初的状态,并将数据库恢复到
执行第一次用户操作后立即出现的状态。然而,在实践中,由于自动分析所做的更改,撤消缓冲区溢出。自动分析会
生成大量的撤消数据。此外,请注意,在自动分析过程中维护undodate会使速度减慢一点。在实践中,这并不是什么大不了的事,
因为撤消数据的限制很快就达到了(几分钟内)。因此,如果在分析过程中用户没有执行任何修改数据库的操作,撤消功能将暂时关闭。

但是,如果你不想在初始自动分析过程中收集撤消数据,
只需关闭ida.cfg中的UNDO_DURING_AA参数。

配置文件ida.cfg还有两个与撤消相关的参数:
UNDO_MAXSIZE撤消缓冲区的最大大小;默认值:128MB一旦达到此限制,将忘记有关最旧用户操作的撤消信息。

UNDO_DEPTH要记住的用户操作的最大数量;默认值:1000000如果设置为0,撤消功能将不可用。

由于撤消缓冲区的大小有限制,任何操作,即使是最微小的操作,都可能在一段时间后变得不可撤消。这是真的,因为analysis或插件可能会继续修改数据库并使缓冲区溢出。一些大规模操作,如删除段,可能是不可撤消的,因为它们生成的撤消数据量太大。

请注意,撤消不会影响IDC或Python脚本的状态。脚本
变量不会因为“撤消”而更改其值。此外,
数据库外部的任何内容都不能更改:创建的文件不会被删除,等等。

有些操作无法撤消。例如,启动调试器或从断点恢复是无法撤消的。

另请参阅重做重置撤消禁用撤消打开撤消历史记录
 

展开阅读全文

标签:反汇编软件快捷键

读者也访问过这里:
邀请您进入交流群 点击扫码
400-8765-888 kefu@makeding.com

专业销售为您服务

欢迎添加好友,了解更多IDA优惠信息,领逆向工程学习资料礼包1份!
热门文章
exe反编译工具哪个好?反编译能力强的工具盘点
随着软件技术的发展,exe(可执行文件)已经成为了电脑、手机等多个平台上的主要软件运行格式,而对于exe文件的反编译也成为了逆向工程中不可缺少的一个步骤。本文将介绍一些常用的exe反编译工具,并评价其优缺点,帮助读者选择合适的工具。
2023-04-12
idapro怎么改为中文
IDA Pro是一款功能强大的反汇编和反编译工具,广泛应用于逆向工程和软件开发领域。在使用IDA Pro时,如果我们不习惯英文界面,可以将其改为中文界面。本文将介绍IDA Pro怎么改为中文界面。IDA Pro界面改成中文主要有两种方法,下面是详细介绍。
2023-04-19
c++反编译工具有哪些
反编译C++代码的工具一般是针对可执行文件和库文件的反汇编和逆向分析工具。本文将给大家介绍c++反编译工具有哪些的内容。市面说的c++反编译工具有很多,下面介绍几款使用认识较多的软件。
2023-04-23
ida怎么查找字符串 ida字符串窗口快捷键
在数字化时代,逆向工程作为解密软件和分析程序的关键技术,正日益受到广泛关注。在逆向分析的过程中,IDA(Interactive DisAssembler)是一款备受推崇的工具,它为逆向工程师们提供了强大的功能和灵活的操作。本文将带您深入探讨如何在IDA中查找字符串,优化字符串窗口的使用,并探讨IDA如何将变量转换成字符串,帮助您更加熟练地驾驭这一工具,为逆向分析的世界增添一抹精彩。
2023-09-27
ida如何转伪代码 ida伪代码怎么看
IDA Pro是一款常用的反汇编和反编译工具,可以帮助我们分析二进制文件的实现细节和执行过程,以便更好地理解程序的执行过程和逻辑。在进行逆向工程的过程中,我们经常需要将反汇编结果转换为伪代码,以便更好地进行分析和修改。本文将介绍如何使用IDA Pro转换为伪代码,并简单讲解ida伪代码怎么看。
2023-04-14
最新文章
IDA免费版功能受限吗 IDA免费版与付费版区别对比
很多人用IDA免费版跑通基础流程后,会发现分析效率与样本覆盖看起来都还行,但一换到非x86架构、需要远程调试、或处在隔离网络环境时,限制就会很快暴露。把免费版的边界、Home与Pro的差异拆开看清楚,能避免盲目升级,也能避免买了仍不够用。
2026-01-13
IDA脚本编写复杂吗 IDA脚本如何调试优化效率
很多人觉得IDA脚本难,通常不是因为Python本身难,而是因为IDA里数据对象多,自动分析又会在后台持续变化,脚本一跑就出现取不到函数、交叉引用不全、界面卡住等情况。把脚本当成“围绕IDB数据库做批处理”的工具来写,先把运行入口、调试方法、性能习惯定成标准动作,脚本会很快从“能跑就行”变成“稳定可复用”。
2026-01-13
IDA支持新型架构及时吗 IDA新处理器如何添加支持
做固件与样本分析时,很多人把“IDA能不能打开”当成支持与否的判断标准,但真正决定体验的是处理器模块是否成熟,能否稳定解码、建立交叉引用、完成基本栈跟踪。判断支持是否及时,可以用官方支持清单加本机处理器选择入口做一次快速核对,再决定是升级、补装模块,还是走自建处理器模块路线。
2026-01-13
IDA二进制分析可靠吗 IDA分析结果如何验证确认
在漏洞复现、兼容性排障、车载与工控固件审计这类场景里,IDA常被当作静态分析主力工具,但静态结果能不能当结论用,取决于二进制本身的信息完整度与分析过程是否把关键前提核对到位。与其问IDA准不准,更实际的做法是明确它在哪些条件下可靠、在哪些条件下必须配合验证手段,把结论从推断变成可复现的证据链。
2026-01-13
IDA反汇编结果准确吗 IDA反汇编精度如何调整优化
IDA的反汇编结果可以作为可靠的分析基础,但它并不是把二进制自动翻译成唯一正确答案的工具。反汇编准确度主要取决于架构与装载信息是否正确、代码与数据边界是否被识别对、以及样本是否存在混淆、自修改或动态解密等行为,想让结果更接近真实执行路径,需要结合设置调整与人工校准一起做。
2026-01-13
ida设置断点怎么运行 ida断点在键盘上的使用方法
在使用IDA pro进行逆向分析的过程中,断点设置是最基础也是最常用的调试手段之一。尤其是在处理复杂的汇编逻辑或定位关键执行点时,合理地设置并运行断点,能够极大提升分析效率与准确度。本文将围绕ida设置断点怎么运行,ida断点在键盘上的使用方法两个关键问题展开,详细介绍IDA pro中的断点操作方式、快捷键使用逻辑及其在多架构平台上的适配特性,帮助用户在实战中更加高效掌控IDA pro的调试能力。
2025-09-28

通过微信咨询我们

欢迎添加好友,了解更多IDA优惠信息,领取逆向工程学习资料礼包1份!

读者也喜欢这些内容: