引言
今天一个qq好友说想要判断NX是否打开了对话框,如果是打开状态就折叠一个自己对话框的一个组,如果没有打开任何对话框,则展开对话框的那个组,他自己也研究了一下,在用户设计BLOCK对话框有效,系统的命令或者用户设计的stylerUI则无法判断,虽然我也不清楚这种业务场景,但也想研究一下,扩充知识面
发现
网右说在BLOCK UI的show函数中,代码会设置一个全局变量为1,也有获取的函数,所以如果获取到的值为1,则是打开了BLOCK UI的对话框,dll是libnxblockstyler.dll,我们使用IDA打开,先搜索show,注意:在不同版本前缀可能不同
(搜索show的函数:X18JA_BLOCK_STYLER_DIALOG_show 这个是需要找的函数)
(双击X18JA_BLOCK_STYLER_DIALOG_show 函数,伪代码界面)
(子函数的伪代码,挖掘子函数