CN102147736A - 软件的安装方法及装置 - Google Patents
软件的安装方法及装置 Download PDFInfo
- Publication number
- CN102147736A CN102147736A CN2010101112970A CN201010111297A CN102147736A CN 102147736 A CN102147736 A CN 102147736A CN 2010101112970 A CN2010101112970 A CN 2010101112970A CN 201010111297 A CN201010111297 A CN 201010111297A CN 102147736 A CN102147736 A CN 102147736A
- Authority
- CN
- China
- Prior art keywords
- main window
- current main
- unique identification
- truncated
- window
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000009434 installation Methods 0.000 claims abstract description 144
- 238000000605 extraction Methods 0.000 claims description 16
- 238000011900 installation process Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000004321 preservation Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000000151 deposition Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开一种软件的安装方法及装置,涉及计算机软件技术领域,在目标软件安装过程中出现无子窗体的主窗口时,实现这类目标软件的自动安装。该方法包括:在确定到当前主窗口为无子窗体的主窗口时,从所述主窗口中截取到的区域提取目标信息,所述目标信息为所述当前主窗口的唯一标识;记录所述当前主窗口中的按键信息;将所述当前主窗口的唯一标识及按键信息,所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。本发明实施例主要应用于软件技术领域中。
Description
技术领域
本发明涉及计算机软件技术领域,尤其涉及一种软件的安装方法及装置。
背景技术
目前在电信等行业,搭建一套环境需要安装大量软件,整个安装过程需要消耗大量人力,软件的自动安装技术可以实现在无人职守的情况下完成软件整个安装过程。现有技术采用的软件自动安装方法中,预先通过用户使用第三方软件来模拟安装一遍目标软件,在用户模拟安装过程中,第三方软件会识别出表示每个安装界面的主窗口中的子窗体标题,并将有代表性的标题选举出来,作为该界面的标识。在用户对该界面进行按键操作的时候,第三方软件会将这些按键信息记录下来。在用户完成模拟安装之后,自动安装软件根据之前记录的信息生成自动安装脚本。
然后在一个没有安装该软件的平台下,用户可以调用上述自动安装脚本进行自动安装,第三方软件会根据之前记录的界面标识,即子窗体标题来识别当前安装进行到了哪个步骤,然后再决定向该界面发出哪些按键信息,从而推动自动安装的执行。
在实现上述软件的自动安装过程中,发明人发现现有技术中至少存在如下问题:某些安装软件的界面不存在任何子窗体,如使用JBulider开发的软件,该软件的界面上所有的控件、文字都是通过贴图绘制在该界面上的,现有技术无法实现这一类软件的自动安装。
发明内容
本发明的实施例提供一种软件的安装方法及装置,在目标软件中存在无子窗体的主窗口时,实现这类目标软件的自动安装。
为达到上述目的,本发明的实施例采用如下技术方案:
一种软件的安装配置方法,包括:
在确定到当前主窗口为无子窗体的主窗口时,从所述主窗口中截取到的区域提取目标信息,所述目标信息为所述当前主窗口的唯一标识;
记录所述当前主窗口中的按键信息;
将所述当前主窗口的唯一标识及按键信息,所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。
一种软件的安装执行方法,包括:
在确定到当前主窗口为无子窗体的主窗口时,从所述当前主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域并从所述截取到的区域提取候选信息;
在所述自动安装脚本中查找与所述候选信息相同的唯一标识;
在所述当前主窗口中执行所述自动安装脚本中保存的所述唯一标识对应的当前主窗口的按键信息。
一种安装配置端,包括:
提取单元,用于在确定到当前主窗口为无子窗体的主窗口时,从所述主窗口中截取到的区域提取目标信息,所述目标信息为所述当前主窗口的唯一标识;
记录单元,用于记录所述当前主窗口中的按键信息;
第一保存单元,用于将所述当前主窗口的唯一标识及按键信息,所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。
一种安装执行端,包括:
提取单元,用于在确定到当前主窗口为无子窗体的主窗口时,从所述当前主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域并从所述截取到的区域提取候选信息;
第一查找单元,用于在所述自动安装脚本中查找与所述候选信息相同的唯一标识;
第一执行单元,用于在所述当前主窗口中执行所述自动安装脚本中保存的所述唯一标识对应的当前主窗口的按键信息。
由上述技术方案所描述的本发明实施例,由于通过从无子窗体主窗口中截取到的区域进行提取出目标信息,并将所述目标信息设置为所述主窗口的唯一标识。然后记录所述主窗口中的按键信息,将所述主窗口的唯一标识、按键信息和所述截取到的区域的位置及大小保存在自动安装脚本中,当用户采用该自动安装脚本安装目标软件时,同样从所述主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域进行提取出候选信息,然后在所述自动安装脚本中查找与所述候选信息相同的唯一标识,通过找到与所述候选信息相同唯一标识就可以确定所述当前主窗口为所述自动安装脚本存放的所述唯一标识对应的主窗口,由于自动安装脚本中保存了每个主窗口的唯一标识,也保存了每个主窗口对应的按键操作,就可以在所述主窗口中执行自动安装脚本中所述主窗口对应的按键操作。从而在用户安装的目标软件的安装界面中存在无子窗体的主窗口时,解决了现有技术中无法对这类目标软件进行自动安装的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为实施例1软件的安装配置方法的流程图;
图2为实施例1软件的安装执行方法的流程图;
图3为实施例1安装配置端结构框图;
图4为实施例1安装执行端结构框图;
图5为实施例2软件的安装配置方法的流程图;
图6为实施例2软件的安装执行方法的流程图;
图7为实施例2安装配置端结构框图;
图8为实施例2安装执行端结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
本发明实施例提供一种软件的安装配置方法,可以实现对无子窗体的主窗口设置唯一标识,如图1所示,该方法包括:
101、在确定当前主窗口为无子窗体的主窗口时,将从所述主窗口中截取到的区域进行提取得到目标信息。上述当前主窗口是目标软件安装过程中表示安装界面的主窗口,所述截取到的区域可以通过用户在上述无子窗体的主窗口中进行截图获得。所述目标信息为所述主窗口的唯一标识。
102、记录所述当前主窗口中的按键信息。可以通过现有技术中提供的键盘钩子技术来获取软件在运行过程中发生的按键操作信息。
103、将所述当前主窗口的唯一标识及按键信息,所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。在目标软件自动安装时,该自动安装脚本将提供目标软件中每个无子窗体的主窗口的唯一标识、按键信息和所述截取到的区域的位置及大小。
相应地,本发明实施例还提供一种软件的安装执行方法,如图2所示,该方法包括:
201、在确定到当前主窗口为无子窗体的主窗口时,从所述当前主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域并从所述截取到的区域提取候选信息。
上述当前主窗口为目标软件安装中表示安装界面的主窗口,由于该自动安装脚本中保存了在安装配置时所截取到的指定区域的位置和大小,可以保证在上述所截取到的指定区域的位置和大小与上述当前主窗口对应时,在上述当前窗口进行相同区域的截图时得到的候选信息与该自动安装脚本中保存的上述当前窗口的目标信息一致,进而可以识别出当前窗口的唯一标识。所述截取到的指定区域的位置和大小有可能为多个,本步骤将根据该自动安装脚本中保存的每个指定区域的位置和大小在当前主窗口中截取相同的区域进行提取得到候选信息。
202、然后,在所述自动安装脚本中查找与所述候选信息相同的唯一标识。通过将上述获得的候选信息与所述自动安装脚本中的各个唯一标识一一进行比较,可以查找出与所述候选信息相同的唯一标识,就可以确定当前主窗口就是在上述自动安装脚本中所找到的唯一标识对应的主窗口。
203、在所述当前主窗口中执行自动安装脚本中保存的所述唯一标识对应的当前主窗口的按键操作。通过查找到的当前主窗口在上述自动安装脚本中的唯一标识后,从而可以根据该唯一标识在上述自动安装脚本中确定所述主窗口对应的按键操作,然后在所述主窗口中执行该对应的按键操作。从而就可以在目标软件中存在无子窗体的主窗口时,实现这类目标软件的自动安装。
为了实现上述方法,本发明实施例还提供一种安装配置端,如图3所示,该装置包括:提取单元31、记录单元32和第一保存单元33。
其中,提取单元31用于在确定到当前主窗口为无子窗体的主窗口时,从所述主窗口中截取到的区域提取目标信息,所述目标信息为所述当前主窗口的唯一标识。记录单元32用于记录所述当前主窗口中的按键信息。可以通过现有技术中提供的键盘钩子技术来获取软件在运行过程中发生的按键操作信息。第一保存单元33用于将所述当前主窗口的唯一标识及按键信息,所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。从而解决了现有技术中对无子窗体的主窗口无法设置唯一性标识的问题。
本发明实施例还提供一种安装执行端,如图4所示,该装置包括:提取单元41、第一查找单元42和第一执行单元43。
提取单元41用于在确定到当前主窗口为无子窗体的主窗口时,从所述当前主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域并从所述截取的区域提取候选信息。所述截取到的区域的位置和大小有可能为多个,提取单元41将根据该自动安装脚本中保存的每个指定区域的位置和大小在当前主窗口中截取相同的区域进行提取得到候选信息。第一查找单元42用于在所述自动安装脚本中查找与所述候选信息相同的唯一标识。可以确定当前主窗口就是在上述自动安装脚本中所找到的唯一标识对应的主窗口。第一执行单元43用于在所述当前主窗口中执行所述自动安装脚本中保存的所述唯一标识对应的当前主窗口的按键信息。从而在用户安装的目标软件的安装过程中存在无子窗体的主窗口时,解决了现有技术中无法对这类目标软件进行自动安装的问题。
实施例2:
本发明实施例将以一个目标软件的具体安装过程为例,详细描述一种软件的安装配置方法,如图5所示,该方法包括:
501、依次判断目标软件安装过程中顺序出现的各个主窗口是否存在子窗体。
目标软件在安装的过程中会顺序出现多个安装界面,每个安装界面都可以称之为一个主窗口。由于在目标软件安装过程中出现的各个主窗口的类型不同,如有些主窗口中可以为存在子窗体的主窗口,而有些主窗口为无子窗体的主窗口。因而,在对目标软件安装过程中顺序出现的每一个主窗口设置相应的唯一标识之前,就需要判断每个出现的主窗口是否存在子窗体,进而对存在子窗体的主窗口和无子窗体的主窗口采取不同的处理方式对其进行设置唯一标识。如果当前主窗口中存在子窗体,通过一系列函数就可以获取到这个子窗体的句柄,进而就可以判断出该当前主窗口中存在子窗体,否则就可以判断出该当前主窗口中没有子窗体。
502、针对存在子窗体的主窗口或者无子窗体的主窗口分别采取不同的处理方式对其设置相应的唯一标识,可以将本步骤详细分为下述步骤:
502A、在判断出当前主窗口为存在子窗体的主窗口时,从所述主窗口中获取目标子窗体的标题,所述目标子窗体标题为所述主窗口的唯一标识。
502B、在判断出当前主窗口为无子窗体的主窗口时,从所述主窗口中截取到的区域提取目标信息,所述目标信息为所述当前主窗口的唯一标识。
所述从截取到的区域提取出的目标信息可以通过下述方式中任一种方式得到:
方式一:从截取到的区域中识别出的字符,如利用图像识别技术从截取到的区域中识别出的文字、数字或字母等作为目标信息。
优选的,方式二:将所述截取到的区域进行编码得出的数字码,如利用特定编码技术对所述截取到的区域进行编码得出十六位的二进制码作为目标信息。可以通过在所述当前主窗口中截取到的区域的图片,然后将所述截取到的图片通过特定编码算法转化为数字码,所述在当前主窗口中截取到的图片与在之前出现的主窗口中截取到的图片不同,因而得出的数字码将会唯一表示当前主窗口。
方式三:直接将所述截取到的区域对应的数字码作为目标信息,由于截取到的区域为数字图片,可以将该数字图片对应的数字码作为目标信息。
503、在对当前主窗口设置唯一标识之后,记录所述当前主窗口中的按键信息。可以通过键盘钩子技术来获取软件在运行过程中发生的按键操作信息。比如,在软件安装的过程中用户在当前主窗口中执行按下“确定”按钮的操作后,本步骤中会将该按下“确定”按钮的按键信息记录下来。
504、设置当前主窗口的唯一标识和记录相应的按键信息后,需要将上述当前主窗口的唯一标识和按键信息,保存在自动安装脚本的当前主窗口对应的记录中,存在子窗体的主窗口和无子窗体的主窗口所保存的相应信息也不相同,具体通过下述步骤实现:
504A、在当前主窗口为存在子窗体的主窗口时,将当前主窗口的唯一标识和按键信息保存在自动安装脚本中的当前主窗口对应的记录中。此时当前主窗口的唯一标识是当前主窗口中的目标子窗体标题。
504B、在当前主窗口为无子窗体的主窗口时,将主窗口的唯一标识、按键信息和所述截取到的区域的位置及大小保存在自动安装脚本中。比如,由于步骤502B中对无子窗体的主窗口设置标识时,采用的是将截取到的区域进行转换为数字码,并把所述数字码当作本窗口的唯一标识,因而对于这类无子窗体的主窗口,除了保存该主窗口的唯一标识和按键操作,还要将所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。
另外,在目标软件的安装过程中,某一时间会出现多个主窗口重叠的现象,针对这种多个主窗口重叠的问题,本发明实施例首先采用上述步骤501至步骤504对所述多个重叠主窗口中的每个主窗口设置相应的唯一标识。在对多个重叠的主窗口进行设置唯一标识时,会先判断该多个重叠的主窗口中每个主窗口是否存在子窗体,对于存在子窗体的主窗口会采取步骤502A中的处理方式选择目标子窗体的标题作为该主窗口的唯一标识,然后记录在该存在子窗体的主窗口中的按键操作信息;对于无子窗体的主窗口会采取步骤502B中的处理方式将从截取到的区域提取得出的目标信息作为该主窗口的唯一标识,然后记录在该无子窗体的主窗口中的按键操作信息。对所述多个重叠主窗口中的每个主窗口设置相应的唯一标识和记录按键操作信息之后,本发明实施例采用下述方式对上述多个重叠主窗口中每个主窗口进行优先级的设置。具体包括以下步骤(图未示):
505、将根据多个重叠主窗口中每个主窗口出现时间从先往后的顺序依次为每个主窗口分配从低到高的优先级。当前主窗口为模态对话框时,优先级最高。比如说,当前存在两个重叠的主窗口,第一个主窗口为先出现的某一个安装界面主窗口,在这个安装界面主窗口上又出现了一个表示警告的主窗口,安装程序会先执行表示警告的主窗口,再执行先出现的某一个安装界面主窗口才能继续下去。此时如果要保证安装程序在自动安装时可以执行下去,就需要给表示警告的主窗口一个高于先出现的安装界面主窗口的优先级,使得软件安装程序在自动安装时当出现这两个重叠窗口时,表示警告的主窗口因为具有较高的优先级可以先执行。
506、然后将为每个主窗口分配的优先级依次保存到所述自动安装脚本中各自对应的主窗口的记录中。
在目标软件自动安装时,该自动安装脚本将提供目标软件安装过程中每个无子窗体的主窗口的唯一标识、按键信息和所述截取到的区域的位置及大小。另外本发明实施例还可以解决现有技术某些软件的安装过程中,在某一个主窗口基础上会跳出新的模态对话框窗口,即同时会出现多个主窗口的叠加,在这种情况下,现有技术无法判定该给哪个界面发送按键消息,从而导致安装失败。而本发明实施例通过对该多个主窗口中每个主窗口设置不同的优先级,可以在目标软件自动安装过程中出现上述多个主窗口重叠的情况时,为每个主窗口的执行顺序提供参考。
相应地,本发明实施例还提供一种软件的安装执行方法,如图6所示,该方法包括:
601、在执行目标软件的自动安装时,首先获取目标软件自动安装过程中顺序出现的每个主窗口,由于目标软件在安装过程中可能还存在其他的非目标软件安装界面的界面,此时需要先将目标软件在安装过程中顺序出现的每个主窗口与其他不相关的界面区别出来。
对于目标软件自动安装过程中顺序出现的各个主窗口,首先通过判断每个出现的主窗口是否存在子窗体,进而对存在子窗体的主窗口和无子窗体的主窗口采取不同的处理方式对其在自动安装脚本中进行查找其对应的唯一标识。如果当前主窗口中存在子窗体,现有技术中通过一系列函数就可以获取到这个子窗体的句柄,进而就可以判断出该当前主窗口中存在子窗体,否则就可以判断出该当前主窗口中没有子窗体。
602、在判断出每个顺序出现的主窗口是否存在子窗体后,针对存在子窗体的主窗口和无子窗体的主窗口分别采用下述步骤从自动安装脚本中查处出对应的唯一标识。
602A、在判断出当前主窗口为存在子窗体的主窗口时,从所述主窗口中获取所有子窗体的标题。
在所述自动安装脚本中查找与所述所有子窗体的标题中的指定子窗体的标题相同的唯一标识。由于一个主窗口中可能存在多个子窗体,在获取到当前主窗口所有的子窗体标题后,将所述所有的子窗体标题与所述自动安装脚本中存放的所有唯一标识进行匹配,所有的子窗体标题中只有一个指定子窗体的标题可以与所有唯一标识中的一个标识相同。当从上述自动安装脚本中找到所述所有子窗体标题中的指定子窗体标题相同的唯一标识时,就可以确定当前主窗口就是在上述自动安装脚本中所找到的唯一标识对应的主窗口。
602B、在判断当前主窗口为无子窗体的主窗口时,从主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域进行提取后得到候选信息。
在对从所述主窗口中截取出的与自动安装脚本中指定区域的位置和大小相同的区域进进提取出候选信息时,可以通过下述方式中的任意一种进行提取:
方式一:从截取到的区域中识别出的字符,如利用图像识别技术从截取到的区域中识别出的文字、数字或字母等作为候选信息。
优选的,方式二:将所述截取到的区域进行编码得出的数字码,如利用特定编码技术对所述截取到的区域进行编码得出十六位的二进制码作为候选信息。可以通过在所述当前主窗口中截取的区域的图片,然后将所述截取到的图片通过特定编码算法转化为数字码,所述在当前主窗口中截取到的图片与在之前出现的主窗口中截取到的图片不同,因而得出的数字码将会唯一表示当前主窗口。
方式三:直接将所述截取到的区域对应的数字码作为候选信息,由于截取到的区域为数字图片,可以将该数字图片对应的数字码作为候选信息。
本实施例的提取候选信息的三种方式与502B提取目标信息是对应一致的,也就是说,当502B选择方式一,这里也选择方式一,当502B选择方式二,这里也选择方式二,当502B选择方式三,这里也选择方式三。
上述当前主窗口为目标软件安装过程中出现的主窗口,由于该自动安装脚本中保存了在安装配置时所截取到的区域的位置和大小,可以保证在上述所截取到的区域的位置和大小与上述当前主窗口对应时,在上述当前窗口进行相同区域的截图时采用相同的方式得到的候选信息与该自动安装脚本中保存的上述当前窗口的目标信息一致,进而可以识别出当前窗口的唯一标识。所述截取到的区域的位置和大小有可能为多个,本步骤将根据该自动安装脚本中保存的每个指定区域的位置和大小在当前主窗口中截取相同的区域进行提取得到候选信息。
然后在所述自动安装脚本中查找与所述候选信息相同的唯一标识,通过将步骤602B中的获得候选信息与所述自动安装脚本中的各个唯一标识一一进行比较,可以查找出与所述候选信息相同的唯一标识,就可以确定当前主窗口就是在上述自动安装脚本中所找到的唯一标识对应的主窗口。
603、在所述当前主窗口中执行从所述自动安装脚本中找到的唯一标识对应的主窗口对应的按键操作。通过查找到的当前主窗口在上述自动安装脚本中的唯一标识后,从而可以根据该唯一标识在上述自动安装脚本中确定所述当前主窗口对应的按键操作,然后在所述当前主窗口中执行该对应的按键操作。从而就可以在目标软件中存在无子窗体的主窗口时,实现这类目标软件的自动安装。
在目标软件自动安装过程中出现多个主窗口重叠的情况时,首先通过上述步骤601至步骤602从自动安装脚本中查找出上述多个重叠主窗口中每个主窗口对应的唯一标识,然后本发明实施例将采用下述步骤为每个主窗口执行相应的按键操作(图未示):
604、在所述自动安装脚本中依次搜索多个重叠主窗口中每个主窗口的唯一标识对应的优先级。上述优先级表示了上述每个主窗口的执行顺序。
605、依次按照所述搜索到的每个主窗口的优先级从高到低的顺序,在所述多个重叠主窗口中每个主窗口中执行自动安装脚本中各自的唯一标识对应的按键操作。从而解决了现有技术中在目标软件安装过程中出现多个主窗口重叠情况下,无法进行目标软件的自动安装的问题。
本发明实施例还提供一种安装配置端,如图7所示,该装置包括:提取单元71、记录单元72、第一保存单元73和获取单元74。
其中,提取单元71用于在确定到当前主窗口为无子窗体的主窗口时,从所述主窗口中截取到的区域提取出的目标信息,所述目标信息为所述当前主窗口的唯一标识。所述提取单元71从截取到的区域提取出的目标信息为:从截取到的区域中识别出的字符;或者为:将所述截取到的区域进行编码得出的数字码;或者为:所述截取到的区域对应的数字码。
获取单元74用于在确定到当前主窗口为存在子窗体的主窗口时,将从所述主窗口中获取的目标子窗体的标题设置为所述主窗口的唯一标识。可以通过现有技术中的一些函数获取当前主窗口每个子窗体的句柄,从而将其中目标子窗体的标题设置为所述主窗口的唯一标识。
记录单元72用于记录所述当前主窗口中的按键信息。可以通过现有技术中提供的键盘钩子技术来获取软件在运行过程中发生的按键操作信息。第一保存单元73用于将所述当前主窗口的唯一标识及按键信息,所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。
在所述当前主窗口为同时出现的多个重叠主窗口中的一个主窗口时,在为所述多个重叠主窗口中每个主窗口设置唯一标识之后,可选的,该装置还包括:设置单元75和第二保存单元76。
其中,设置单元75用于为所述当前主窗口分配对应的优先级,所述当前主窗口在所述多个重叠主窗口中出现的时间越早,所述当前主窗口分配的优先级越高。第二保存单元76用于保存所述优先级到所述自动安装脚本中所述当前主窗口记录中。从而可以解决现有技术某些软件的安装过程中,在某一个主窗口基础上会跳出新的模态对话框窗口,即同时会出现多个主窗口的叠加,在这种情况下,现有技术无法判定该给哪个界面发送按键消息,从而导致安装失败。而本发明实施例通过设置单元75对该多个主窗口中每个主窗口设置不同的优先级,可以在目标软件自动安装过程中出现上述多个主窗口重叠的情况时,为每个主窗口的执行顺序提供参考。
同时,本发明实施例还提供一种安装执行端,如图8所示,该装置包括:提取单元81、第一查找单元82、第一执行单元83、获取单元84和第二查找单元85。
其中,在确定到当前主窗口为无子窗体的主窗口时,提取单元81用于从所述当前主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域并从所述截取的区域提取候选信息。所述提取单元81从所述截取的区域提取的候选信息为:从截取到的区域中识别出的字符;或者为:将所述截取到的区域进行编码得出的数字码;或者为:所述截取到的区域对应的数字码。第一查找单元82用于在所述自动安装脚本中查找与所述候选信息相同的唯一标识。可以确定当前主窗口就是在上述自动安装脚本中所找到的唯一标识对应的主窗口。
在确定到当前主窗口为存在子窗体的主窗口时,获取单元84用于从所述主窗口中获取所有子窗体的标题。第二查找单元85用于在所述自动安装脚本中查找与所述子窗体中指定子窗体的标题相同的唯一标识。
然后,第一执行单元83用于在所述当前主窗口中执行所述自动安装脚本中保存的所述唯一标识对应的当前主窗口的按键信息。从而在用户安装的目标软件中存在无子窗体的主窗口时,解决了现有技术中无法对这类目标软件进行自动安装的问题。
在所述当前主窗口为同时出现的多个重叠主窗口中的一个主窗口时,上述自动安装脚本中还保存了多个重叠主窗口中的每个主窗口的优先级,此时在为所述当前主窗口查找到其对应的唯一标识之后,可选的,该装置还包括:搜索单元86和第二执行单元87。
其中,搜索单元86用于在所述自动安装脚本中搜索所述当前主窗口对应的优先级。第二执行单元87在所述多个重叠主窗口中优先级比所述当前主窗口的优先级高的主窗口都执行按键信息操作之后,在所述当前主窗口中执行所述自动安装脚本中保存的所述主窗口对应的按键信息。从而解决了现有技术中在目标软件安装过程中出现多个主窗口重叠情况下,无法进行目标软件的自动安装的问题。
本发明实施例主要应用于软件技术领域,可以在目标软件中存在无子窗体的主窗口时,实现这类目标软件的自动安装。本发明实施例还可以应用在自动安装补丁、程序自动升级、程序自动卸载、软件自动操作等领域。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种软件的安装方法,其特征在于,包括:
在确定到当前主窗口为无子窗体的主窗口时,从所述主窗口中截取到的区域提取目标信息,所述目标信息为所述当前主窗口的唯一标识;
记录所述当前主窗口中的按键信息;
将所述当前主窗口的唯一标识及按键信息,所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。
2.根据权利要求1所述的软件的安装方法,其特征在于,所述目标信息为:从截取到的区域中识别出的字符;或者为:
将所述截取到的区域进行编码得出的数字码;或者为:
所述截取到的区域对应的数字码。
3.根据权利要求1所述的软件的安装方法,其特征在于,还包括:
在确定到当前主窗口为存在子窗体的主窗口时,从所述主窗口中获取目标子窗体的标题,所述目标子窗体标题为所述主窗口的唯一标识。
4.根据权利要求1至3中任一项所述的软件的安装方法,其特征在于,在所述当前主窗口为同时出现的多个重叠主窗口中的一个主窗口时,在为所述多个重叠主窗口中每个主窗口设置唯一标识之后,还包括:
为所述当前主窗口分配对应的优先级,所述当前主窗口在所述多个重叠主窗口中出现的时间越早,所述当前主窗口分配的优先级越高;
保存所述优先级到所述自动安装脚本中所述当前主窗口记录中。
5.一种软件的安装方法,其特征在于,包括:
在确定到当前主窗口为无子窗体的主窗口时,从所述当前主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域并从所述截取到的区域提取候选信息;
在所述自动安装脚本中查找与所述候选信息相同的唯一标识;
在所述当前主窗口中执行所述自动安装脚本中保存的所述唯一标识对应的当前主窗口的按键信息。
6.根据所述权利要求5所述的软件的安装方法,其特征在于,所述候选信息为:从截取到的区域中识别出的字符;或者为:
将所述截取到的区域进行编码得出的数字码;或者为:
所述截取到的区域对应的数字码。
7.根据所述权利要求5所述的软件的安装方法,其特征在于,还包括:
在确定到当前主窗口为存在子窗体的主窗口时,从所述主窗口中获取所有子窗体的标题;
在所述自动安装脚本中查找与所述子窗体中指定子窗体的标题相同的唯一标识。
8.根据所述权利要求5-7中的任一项所述的软件的安装方法,其特征在于,在所述当前主窗口为同时出现的多个重叠主窗口中的一个主窗口时,在为所述当前主窗口查找到其对应的唯一标识之后,还包括:
在所述自动安装脚本中搜索所述当前主窗口对应的优先级;
在所述多个重叠主窗口中优先级比所述当前主窗口的优先级高的主窗口都执行按键信息操作之后,在所述当前主窗口中执行所述自动安装脚本中保存的所述主窗口对应的按键信息。
9.一种安装配置端,其特征在于,包括:
提取单元,用于在确定到当前主窗口为无子窗体的主窗口时,从所述主窗口中截取到的区域提取目标信息,所述目标信息为所述当前主窗口的唯一标识;
记录单元,用于记录所述当前主窗口中的按键信息;
第一保存单元,用于将所述当前主窗口的唯一标识及按键信息,所述截取到的区域的位置及大小保存到自动安装脚本中所述当前主窗口对应的记录中。
10.根据权利要求9所述的安装配置端,其特征在于,还包括:
获取单元,用于在确定到当前主窗口为存在子窗体的主窗口时,从所述主窗口中获取目标子窗体的标题,所述目标子窗体的标题为所述主窗口的唯一标识。
11.根据权利要求9或10中的任一项所述的安装配置端,其特征在于,还包括:
设置单元,用于在所述当前主窗口为同时出现的多个重叠主窗口中的一个主窗口时,在为所述多个重叠主窗口中每个主窗口设置唯一标识之后,为所述当前主窗口分配对应的优先级,所述当前主窗口在所述多个重叠主窗口中出现的时间越早,所述当前主窗口分配的优先级越高;
第二保存单元,用于保存所述优先级到所述自动安装脚本中所述当前主窗口记录中。
12.一种安装执行端,其特征在于,包括:
提取单元,用于在确定到当前主窗口为无子窗体的主窗口时,从所述当前主窗口中截取与自动安装脚本中指定区域的位置和大小相同的区域并从所述截取到的区域提取候选信息;
第一查找单元,用于在所述自动安装脚本中查找与所述候选信息相同的唯一标识;
第一执行单元,用于在所述当前主窗口中执行所述自动安装脚本中保存的所述唯一标识对应的当前主窗口的按键信息。
13.根据权利要求12所述的安装执行端,其特征在于,还包括:
获取单元,用于在确定到当前主窗口为存在子窗体的主窗口时,从所述主窗口中获取所有子窗体的标题;
第二查找单元,用于在所述自动安装脚本中查找与所述子窗体中指定子窗体的标题相同的唯一标识。
14.根据权利要求12-13中任一项所述的安装执行端,其特征在于,还包括:
搜索单元,用于在所述当前主窗口为同时出现的多个重叠主窗口中的一个主窗口时,在为所述当前主窗口查找到其对应的唯一标识之后,在所述自动安装脚本中搜索所述当前主窗口对应的优先级;
第二执行单元,在所述多个重叠主窗口中优先级比所述当前主窗口的优先级高的主窗口都执行按键信息操作之后,在所述当前主窗口中执行所述自动安装脚本中保存的所述主窗口对应的按键信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010111297.0A CN102147736B (zh) | 2010-02-10 | 2010-02-10 | 软件的安装方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010111297.0A CN102147736B (zh) | 2010-02-10 | 2010-02-10 | 软件的安装方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102147736A true CN102147736A (zh) | 2011-08-10 |
CN102147736B CN102147736B (zh) | 2014-08-13 |
Family
ID=44422012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010111297.0A Expired - Fee Related CN102147736B (zh) | 2010-02-10 | 2010-02-10 | 软件的安装方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102147736B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064698A (zh) * | 2011-08-31 | 2013-04-24 | 三星电子株式会社 | 自动安装软件的方法和装置 |
CN104503778A (zh) * | 2014-12-09 | 2015-04-08 | 北京奇虎科技有限公司 | 一种应用程序的安装方法和装置 |
CN104765630A (zh) * | 2015-04-10 | 2015-07-08 | 百度在线网络技术(北京)有限公司 | 软件安装方法及装置 |
WO2016000586A1 (en) * | 2014-06-30 | 2016-01-07 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for displaying popup box message |
WO2017173925A1 (zh) * | 2016-04-06 | 2017-10-12 | 中兴通讯股份有限公司 | 一种软件管理方法及装置、终端、存储介质 |
CN107729107A (zh) * | 2017-10-09 | 2018-02-23 | 武汉斗鱼网络科技有限公司 | 一种模态对话框处理方法及装置 |
CN111078236A (zh) * | 2019-12-18 | 2020-04-28 | 中国建设银行股份有限公司 | 一种软件自动安装方法、系统、电子设备及存储介质 |
CN112631619A (zh) * | 2020-12-25 | 2021-04-09 | 西安雷风电子科技有限公司 | 一种自动安装可执行程序的方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949173A (zh) * | 2006-11-09 | 2007-04-18 | 华为技术有限公司 | 一种软件的安装方法及其装置 |
US20070256072A1 (en) * | 2006-05-01 | 2007-11-01 | Microsoft Corporation | Multi-installer product deployment |
CN101515238A (zh) * | 2009-03-31 | 2009-08-26 | 山东鲁西化工股份有限公司 | 一种用于计算机自动安装或卸载应用软件的方法及装置 |
-
2010
- 2010-02-10 CN CN201010111297.0A patent/CN102147736B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070256072A1 (en) * | 2006-05-01 | 2007-11-01 | Microsoft Corporation | Multi-installer product deployment |
CN1949173A (zh) * | 2006-11-09 | 2007-04-18 | 华为技术有限公司 | 一种软件的安装方法及其装置 |
CN101515238A (zh) * | 2009-03-31 | 2009-08-26 | 山东鲁西化工股份有限公司 | 一种用于计算机自动安装或卸载应用软件的方法及装置 |
Non-Patent Citations (1)
Title |
---|
李刚: "《软件自动安装部署原理探究》", 《辽宁师范学报》, vol. 10, no. 1, 31 March 2008 (2008-03-31) * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064698A (zh) * | 2011-08-31 | 2013-04-24 | 三星电子株式会社 | 自动安装软件的方法和装置 |
WO2016000586A1 (en) * | 2014-06-30 | 2016-01-07 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for displaying popup box message |
US10379696B2 (en) | 2014-06-30 | 2019-08-13 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for displaying popup window message |
CN104503778A (zh) * | 2014-12-09 | 2015-04-08 | 北京奇虎科技有限公司 | 一种应用程序的安装方法和装置 |
CN104765630A (zh) * | 2015-04-10 | 2015-07-08 | 百度在线网络技术(北京)有限公司 | 软件安装方法及装置 |
CN104765630B (zh) * | 2015-04-10 | 2019-02-01 | 百度在线网络技术(北京)有限公司 | 软件安装方法及装置 |
WO2017173925A1 (zh) * | 2016-04-06 | 2017-10-12 | 中兴通讯股份有限公司 | 一种软件管理方法及装置、终端、存储介质 |
CN107729107A (zh) * | 2017-10-09 | 2018-02-23 | 武汉斗鱼网络科技有限公司 | 一种模态对话框处理方法及装置 |
CN107729107B (zh) * | 2017-10-09 | 2021-02-02 | 武汉斗鱼网络科技有限公司 | 一种模态对话框处理方法及装置 |
CN111078236A (zh) * | 2019-12-18 | 2020-04-28 | 中国建设银行股份有限公司 | 一种软件自动安装方法、系统、电子设备及存储介质 |
CN112631619A (zh) * | 2020-12-25 | 2021-04-09 | 西安雷风电子科技有限公司 | 一种自动安装可执行程序的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102147736B (zh) | 2014-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102147736B (zh) | 软件的安装方法及装置 | |
US9619512B2 (en) | Memory searching system and method, real-time searching system and method, and computer storage medium | |
CN102567485B (zh) | 用于内容检索的提供商专用解析 | |
WO2012154159A1 (en) | Image-based automation systems and methods | |
US20200134046A1 (en) | Compression of Log Data Using Field Types | |
CN104283924A (zh) | 信息推送方法、装置、客户端及服务器 | |
CN102148805A (zh) | 特征匹配方法和装置 | |
CN106528409A (zh) | 一种程序崩溃问题查找方法和装置 | |
CN104185086A (zh) | 一种提供视频信息的方法和装置 | |
CN104965731A (zh) | 一种数据处理方法及电子终端 | |
CN116362261A (zh) | 应对数字化服务项目的用户会话信息解析方法及软件产品 | |
CN109782997A (zh) | 一种数据处理方法、装置及存储介质 | |
CN105933497A (zh) | 一种多模式的来电拦截方法与装置 | |
CN111669633A (zh) | 遥控信号转触控操作方法、装置和显示设备 | |
CN104423928A (zh) | 一种数据处理方法、装置及终端设备 | |
CN105488217A (zh) | 用于在终端中执行关联操作的设备和方法 | |
US20220019954A1 (en) | Systems and methods for automated pattern detection in service tickets | |
CN111949720B (zh) | 基于大数据和人工智能的数据分析方法及云端数据服务器 | |
CN104182479A (zh) | 一种处理信息的方法及装置 | |
CN102789480B (zh) | 一种电子地图历史查询结果的展示方法及客户端 | |
CN109656704B (zh) | 一种信息处理方法及信息处理装置 | |
CN105227528A (zh) | 对Web服务器群的攻击的检测方法和装置 | |
CN111966506B (zh) | 基于不同应用程序的内容分享方法和计算机设备 | |
US20220207388A1 (en) | Automatically generating conditional instructions for resolving predicted system issues using machine learning techniques | |
CN115187999A (zh) | 文本识别方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140813 |