1.一种控件捕捉方法,其特征在于,包括:
获取正在运行的程序;
检测从所述正在运行的程序中选择的目标程序;
在所述目标程序的运行进程中加载目标DLL文件,以显示工具主窗口;
当检测到通过所述工具主窗口输入的窗口句柄获取操作时,获取所述目标程序对应的目标窗口的窗口句柄,并将所述窗口句柄转换为Qt指针;
若所述Qt指针不为空,根据所述Qt指针遍历所述目标窗口的所有子控件,并在所述工具主窗口中输出所述目标窗口的控件列表;其中,所述目标窗口的控件列表包括所述目标窗口以及所述目标窗口的所有子控件;
当检测到针对所述目标窗口中的目标控件的操作时,在所述工具主窗口中输出所述目标控件的控件属性;其中,所述目标控件包括所述目标窗口或所述目标窗口的子控件。
2.如权利要求1所述的方法,其特征在于,所述在目标程序的进程对象中加载目标DLL文件,包括:在所述目标程序的进程对象中启动一个线程,通过所述线程以所述目标DLL文件的访问路径为输入参数调用指定API,以加载所述目标DLL文件。
3.如权利要求1所述的方法,其特征在于,所述在所述工具主窗口中输出所述目标控件的控件属性之后,还包括:根据针对所述目标控件的控件属性的修改操作,修改所述目标子控件的控件属性。
4.如权利要求1所述的方法,其特征在于,所述在所述工具主窗口中输出所述目标控件的控件属性之后,还包括:当检测到针对目标控件的窗口消息监听指令时,以所述目标控件,以及指定事件为输入参数重载事件过滤函数,以监听该目标控件的窗口消息。
5.如权利要求1所述的方法,其特征在于,所述在所述工具主窗口中输出所述目标控件的控件属性之后,还包括:当检测到针对目标控件的信号与槽监听指令时,在信号发生起始时刻、信号发生结束时刻,以及槽被调用起始时刻、槽被调用结束时刻,运行预先定义的回调函数,以监听目标控件的信号与槽。
6.一种控件捕捉设备,其特征在于,包括:
获取模块,用于获取正在运行的程序;
检测模块,用于检测从所述正在运行的程序中选择的目标程序;
加载模块,用于在所述目标程序的运行进程中加载目标DLL文件,以显示工具主窗口;
所述获取模块,还用于当检测到通过所述工具主窗口输入的窗口句柄获取操作时,获取所述目标程序对应的目标窗口的窗口句柄;
转换模块,用于将所述窗口句柄转换为Qt指针;
输出模块,用于当所述Qt指针不为空时,根据所述Qt指针遍历所述目标窗口的所有子控件,并在所述工具主窗口中输出所述目标窗口的控件列表;其中,所述目标窗口的控件列表包括所述目标窗口以及所述目标窗口的所有子控件;
所述输出模块,还用于当检测到针对所述目标窗口中的目标控件的操作时,在所述工具主窗口中输出所述目标控件的控件属性;其中,所述目标控件包括所述目标窗口或所述目标窗口的子控件。
7.如权利要求6所述的设备,其特征在于,
所述加载模块,具体用于在所述目标程序的进程对象中启动一个线程,通过所述线程以所述目标DLL文件的访问路径为输入参数调用指定API,以加载所述目标DLL文件。
8.如权利要求6所述的方法,其特征在于,所述设备还包括:修改模块,用于根据针对所述目标控件的控件属性的修改操作,修改所述目标子控件的控件属性。
9.如权利要求6所述的方法,其特征在于,所述设备还包括:第一监听模块,用于当所述检测模块检测到针对目标控件的窗口消息监听指令时,以所述目标控件,以及指定事件为输入参数重载事件过滤函数,以监听该目标控件的窗口消息。
10.如权利要求6所述的方法,其特征在于,所述设备还包括:第二监听模块,用于当所述检测模块检测到针对目标控件的信号与槽监听指令时,在信号发生起始时刻、信号发生结束时刻,以及槽被调用起始时刻、槽被调用结束时刻,运行预先定义的回调函数,以监听目标控件的信号与槽。