[发明专利]安装软件的方法和装置有效
申请号: | 201110059923.0 | 申请日: | 2011-03-14 |
公开(公告)号: | CN102681861A | 公开(公告)日: | 2012-09-19 |
发明(设计)人: | 胡中兴 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F11/30 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 罗振安 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 安装 软件 方法 装置 | ||
技术领域
本发明涉及计算机软件领域,特别涉及一种安装软件的方法和装置。
背景技术
在各种操作系统平台上,例如windows平台,用户经常需要安装各种应用程序的安装包,以便于使用该应用程序提供的功能。例如,安装各种聊天工具,以便于实现与其他用户之间的即时通讯功能。
目前,应用程序的安装包通常为用户提供安装向导,用户根据安装向导的提示逐步完成安装。例如,当用户点击安装包的可执行文件时,该应用程序的安装向导首先提示用户是否同意一些规范,如果用户点击同意再执行下一步,还会提示用户是否安装某些插件,或是否将网页设为首页等,用户需要逐步确认选择,经过数个操作之后,最终才能完成安装。
由此可见,现有技术需要用户根据安装向导,逐步手工确认选择才能完成安装。对于不熟悉软件安装的用户来说,可能无法顺利完成安装或安装出错,影响用户使用软件。
发明内容
为了改变软件需要用户手工干预才能完成安装的现状,本发明实施例提供了一种安装软件的方法和装置。
所述技术方案如下:
本发明一方面提供了一种安装软件的方法,所述方法包括:
步骤1:建立安装包对应的监控任务;
步骤2:运行所述安装包,将所述安装包的进程加入所述监控任务;
步骤3:枚举顶层窗体句柄,获取每个顶层窗体句柄所属的进程;
步骤4:如果顶层窗体句柄所属的进程在所述监控任务中,枚举所述顶层窗体句柄对应的顶层窗体上所有控件句柄,获取每个控件句柄上的文字;
步骤5:根据所述文字中包含的信息,对所述文字相应的控件执行相应的操作;
步骤6:重复步骤3、步骤4和步骤5,直到所述监控任务中的所有进程都执行完毕。
其中,步骤1具体包括:调用系统API CreateJobObject建立安装包对应的监控任务。
其中,步骤2具体包括:调用系统API CreateProcess运行所述安装包,使用AssignProcessToJobObject将所述安装包的进程加入所述监控任务。
其中,步骤3具体包括:通过EnumWindows枚举windows顶层窗体句柄,使用GetWindowThreadProcessId获取每个顶层窗体句柄所属的进程。
其中,步骤5具体包括:
如果所述文字中包含确认相关的信息,对所述文字相应的控件执行点击操作;如果所述文字中包含选择相关的信息,对所述文字相应的控件执行不选择操作;如果所述文字中包含路径相关的信息,在所述文字相应的控件中输入用户设定的路径。
所述确认相关的信息包括:“确认”、“我同意”、“I agree”、“下一步”、以及“完成”;
所述选择相关的信息包括:“插件”、“设为主页”、以及“收费”选项;
所述路径相关的信息包括:“保存到”、以及“安装到”。
其中,所述方法还包括:对至少两个安装包,执行权利要求1所述的方法,以实现软件批量安装。
本发明另一方面提供了一种安装软件的装置,所述装置包括:
建立模块,用于建立安装包对应的监控任务;
添加模块,用于运行所述安装包,将所述安装包的进程加入所述监控任务;
第一枚举和获取模块,用于枚举顶层窗体句柄,获取每个顶层窗体句柄所属的进程;
第二枚举和获取模块,用于如果顶层窗体句柄所属的进程在所述监控任务中,枚举所述顶层窗体句柄对应的顶层窗体上所有控件句柄,获取每个控件句柄上的文字;
执行模块,用于根据所述文字中包含的信息,对所述文字相应的控件执行相应的操作;
循环模块,用于重复执行第一枚举和获取模块、第二枚举和获取模块和执行模块,直到所述监控任务中的所有进程都执行完毕。
其中,所述建立模块,具体用于调用系统API CreateJobObject建立安装包对应的监控任务。
其中,所述添加模块,具体用于调用系统API CreateProcess运行所述安装包,使用AssignProcessToJobObject将所述安装包的进程加入所述监控任务。
其中,所述第一枚举和获取模块,具体用于通过EnumWindows枚举windows顶层窗体句柄,使用GetWindowThreadProcessId获取每个顶层窗体句柄所属的进程。
其中,所述执行模块,具体用于
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110059923.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种WLAN接入认证方法和装置
- 下一篇:手动式骨内器械