这类问题一般出现在误关了IDA View-A这个标签、拖乱了子窗口的位置、切换了多窗口的布局,或者打开了以前保存过的工程数据库以后,反汇编窗口是查看地址、指令、伪代码跳转和交叉引用的核心区域,一旦这个窗口找不到了,或者它跟函数列表、输出窗口这些挤到了一起,分析的整个过程就会被打断,处理的时候不用急着去重新安装一遍IDA Pro,先从视图的恢复、窗口的停靠、桌面的布局,还有数据库的状态这几个地方挨个排查,通常就能把界面给调回来。
一、反汇编窗口不见了怎么恢复显示
反汇编窗口消失,大多数时候是因为它被关掉了、被别的窗口给挡住了,或者当前打开的根本就不是反汇编的那个视图,恢复的时候,可以先看一看主界面上还有没有那个反汇编视图的标签,再通过菜单去把对应的视图重新打开。
1、检查反汇编视图的标签还在不在
先看一眼主界面的上方或者中间那片区域,是不是还留着反汇编视图的标签,如果标签还在,只是被其他窗口给遮住了,那直接去点一下那个标签,就可以切回到反汇编窗口里面去,要是标签被挤到了边缘的地方,也可以用鼠标把它拖回到中间用来编辑的那块区域里来。
2、通过菜单把反汇编视图重新打开
如果反汇编视图已经被关掉了,那就可以去顶部菜单的【视图】里面,找到并打开【子窗口】这个选项,在里面找一找跟反汇编视图有关的那个窗口入口,不同版本里叫的名字可能会稍微有点差别,但一般都不会跑出视图或者子窗口这个菜单的范围,等打开以后,把新出现的反汇编窗口再拖回到主区域里就行了。
3、用函数列表让光标跳回到有效的位置上
有的时候,窗口虽然还好好地在那里,但是里面的内容是空白的,出现这种情况是因为当前的光标停在了一个没有用的地址上,这个时候可以把【视图】菜单下【子窗口】里的【函数列表】给打开,然后在函数列表里面随便双击一个函数的名字,让IDA Pro跟着重新跳到一个可以被反汇编的地址上面去,要是这时候指令能显示出来了,就说明窗口本身没有坏,只不过是它的位置或者地址的状态不太对。
4、看看是不是错把十六进制窗口当成了主视图
有的人会误把十六进制窗口当成了主视图,结果就以为反汇编窗口已经不见了,这时候可以去看一眼当前的标签是不是十六进制视图,如果确实是,那就回到反汇编视图那里去,或者是重新把反汇编视图给打开,不要一直在十六进制窗口里面去反复调整那些显示选项。
二、反汇编窗口布局弄乱了怎么调整回来
布局被弄乱,通常是因为窗口被拖成了一个浮在半空中的状态,或者是好几个子窗口都挤在了同一块区域里面,调整的时候不要一个一个地乱拖,应该先把主要的分析区域给恢复好,然后再把那些起辅助作用的窗口,放回到两侧或者底部去。
1、把反汇编窗口放回到中间的区域
先用鼠标按住反汇编视图的那个标签,把它往界面中央那块用来停靠的区域里面拖,在拖动的过程当中,留神看一看那个用来提示停靠位置的框,等看到合适的提示以后,再松开鼠标,让它把主编辑区给占满,反汇编窗口最好不要放在底部或者旁边,要不然的话,指令那一行会被压得非常窄,去看跳转和注释的时候,都会觉得很不方便。
2、去整理那些常用的辅助窗口
像函数列表、名称窗口、字符串窗口这些,可以被放在界面的左侧或者右侧,而输出窗口和消息窗口,更适合被放在底部,可以把这几个窗口依次打开,再一个一个地把它们拖到各自固定的区域里面去,这么一来,主分析的工作就交给反汇编窗口,定位信息的事情就交给旁边的辅助窗口,界面看着会清楚很多。
3、把暂时用不上的窗口给关掉
要是界面里面堆了太多的标签,比如什么结构体、枚举、导入表、交叉引用的结果等等,那就先把当前用得着的那几个窗口给留下来,其余那些,直接把它们关掉就可以了,把子窗口关掉,并不会删掉数据库里面的任何内容,这么做只是为了让界面少受一点干扰,后面再需要用到它们的时候,仍然可以从【打开子窗口】那个菜单里面重新找出来打开。
4、把桌面布局恢复成默认的样子
要是拖了半天还是觉得乱,那就可以试着去窗口或者桌面相关的菜单里面,找一找有没有【重置桌面】、【恢复桌面】这一类能帮人把布局恢复过来的选项,不同版本的IDA Pro,这个选项在菜单里的位置不完全一样,但大体上都和窗口管理、桌面配置有关系,先把布局恢复成默认的,然后再去重新摆放自己常用的那些窗口,这比在一份已经被弄乱的布局上面继续修修补补,要省事得多。
三、窗口设置调好以后还要留意些什么
窗口被顺利恢复以后,最好再顺手去检查一下数据库的状态、字体的大小,还有保存桌面布局的设置,很多跟布局有关的问题之所以会反反复复地出现,就是因为用户在把界面调顺了之后,没有把当前的桌面状态给保存起来,或者是在每次打开不同的数据库文件时,都还在沿用着那套旧的布局。
1、把当前能用的这套布局给保存起来
等界面被调顺了以后,就可以去桌面布局相关的菜单里面,把现在这一套布局给保存下来,这么做了以后,下回窗口再被人拖乱的时候,只要把保存过的那套布局直接给加载回来就行了,就用不着再花时间一个一个地去重新摆放窗口,特别是在需要来回分析好多个样本的时候,这个操作是很有用的。
2、去检查一下字体和缩放的设置
如果反汇编窗口里面显示得很拥挤,那可能就不是布局本身的问题了,而是跟字体、字号,或者是系统缩放的比例有关,这个情况,可以进到【选项】相关的设置里面,去把反汇编窗口的字体大小给调整一下,让地址、操作码、注释,还有交叉引用,都能被正常地显示出来。
3、要把数据库的问题和界面的问题给区分开
要是只有某一个数据库文件被打开以后,窗口才会变得不正常,而打开别的文件就没事,那就有可能是那个数据库自己保存了一套特殊的桌面状态,这个时候,可以去重新调整一下那个数据库的布局,然后把它保存下来,或者试着去新建一个分析文件来对比一下看看,千万不要因为一个工程的界面不正常,就直接断定是IDA Pro的安装文件坏掉了。
4、尽量减少去使用那些浮在外面的窗口
浮动窗口这种东西,比较适合用来临时看一眼信息,但是在做长期分析的时候,最好还是不要把所有的窗口都弄成浮在外面的状态,尤其是在电脑屏幕被切换过、分辨率被改动过,或者外接的显示器被拔掉再插上以后,那些浮动的窗口,是很容易跑到一个看都看不见的地方去的,所以,用来做主分析的窗口,要尽量把它固定在可以停靠的区域里面,而那些辅助的窗口,就按照划分好的区域去摆放,这样就可以了。
总结
总的来说,反汇编窗口要怎么才能恢复显示,这里面关键的一步,就是要把反汇编视图这个标签给找回来,然后通过【打开子窗口】这个菜单,把需要的子窗口重新打开,再借助函数列表,让光标跳回到一个有效的地址上面去;而布局被弄乱了又要怎么去调整,它的关键则是要把反汇编窗口给放回到界面中间的那个区域,把函数、名称、字符串还有输出这些窗口,都分开停靠到不同的地方,然后再把那些用不着的标签给关掉,等界面被恢复好了以后,千万别忘了顺手把当前的布局给保存一下,这样一来,后面再碰到窗口错乱的问题,就不需要重新再去摸索一遍了。
