CN103577225A - 一种软件安装方法和装置 - Google Patents

一种软件安装方法和装置 Download PDF

Info

Publication number
CN103577225A
CN103577225A CN201310499979.7A CN201310499979A CN103577225A CN 103577225 A CN103577225 A CN 103577225A CN 201310499979 A CN201310499979 A CN 201310499979A CN 103577225 A CN103577225 A CN 103577225A
Authority
CN
China
Prior art keywords
software
installation
file
installation kit
kit
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
Application number
CN201310499979.7A
Other languages
English (en)
Other versions
CN103577225B (zh
Inventor
丁超
任寰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201310499979.7A priority Critical patent/CN103577225B/zh
Publication of CN103577225A publication Critical patent/CN103577225A/zh
Application granted granted Critical
Publication of CN103577225B publication Critical patent/CN103577225B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种软件安装方法和装置,所述方法包括:将软件安装包中的安装程序文件解压至内存中,其中,所述软件安装包包括引导安装程序的安装程序文件和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件;运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序;同时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。通过本发明解决了软件安装过程冗长、复杂,安装耗时久的问题。

Description

一种软件安装方法和装置
技术领域
本发明涉及计算机技术领域,具体涉及一种软件安装方法和装置。
背景技术
随着计算机的发展,越来越多应用软件被开发,以满足人们工作和活动中的多样化需求。例如,用户通过图像软件可以完成图片的编辑;用户通过影音播放软件可以观看影音文件。应用软件被广泛的使用,获取方法也很多:人们可以从互联网中或者存储器中获取应用软件。一般地,从互联网中下载的应用软件或者从存储器中读取的应用软件都是所述应用软件对应的一个软件安装包,只有当运行这个软件安装包,并将软件安装包中的所有文件都释放并安装到硬盘中时,用户才能正常运行所述应用软件。
目前,通常采用的软件安装方法的流程如下:
将软件安装包中的所有安装资源文件解压缩到本地的硬盘中,然后再依据解压的安装资源文件进行软件的安装。所述安装方法,在将安装资源文件解压到硬盘过程中,需要与硬盘之间存在多次的I/O(Input/Output,I/O,输入/输出)交互操作,才能将安装资源文件写入到硬盘中。在依据解压的安装资源文件进行软件的安装的过程中,也存在多次的与硬盘之间的I/O交互操作,将前述解压到硬盘中的安装资源文件读取出来,然后执行软件的安装。
目前采用的软件安装方法,需要等待软件安装包中的所有安装资源文件都安装完成后,才能启动运行所述软件,用户需要花费大量时间等待所有安装资源文件安装完成,然后启动所述软件。例如,一个600M的软件安装包,需要10分钟才能完成所有安装资源文件的安装过程,用户需要等待10分钟,才能启动所述软件。同时,由于目前采用的软件安装方法需要频繁的与硬盘进行I/O交互操作,而与硬盘之间进行I/O交互操作是需要花费大量时间的,因此,进一步增加了软件安装过程所消耗的时间。
因此,目前采用的软件安装方法,安装过程冗长、复杂,耗时久,从软件开始安装到软件可以启动运行时间较长,严重影响了用户的使用体验。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种软件安装方法和相应的一种软件安装装置。
依据本发明的一个方面,提供了一种软件安装方法,所述软件安装方法,包括:
将软件安装包中的安装程序文件解压至内存中,其中,所述软件安装包包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件;
运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序;同时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
可选地,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装,包括:
在后台按照所述安装程序文件的引导,将所述压缩程序文件中除所述主程序文件外的其它程序文件解压至所述指定位置;
直至将所有压缩程序文件解压至所述指定位置,完成所述软件安装包中所有程序文件的安装。
可选地,所述启动从所述软件安装包中解压缩的软件主程序,包括:
加载欢迎提示界面,所述欢迎提示界面中包括启动选项,以提示用户是否启动所述软件主程序;
触发所述运行启动之后,启动所述软件主程序。
可选地,在将软件安装包中的安装程序文件解压至内存中之前,所述方法还包括:
接收用户输入的标识信息,根据所述标识信息配置所述软件安装包中的安装程序文件和压缩程序文件,生成携带所述标识信息的软件安装包;
获取携带标识信息的软件安装包。
可选地,所述软件安装方法,还包括:
在所述安装程序文件进入后台继续引导软件安装时,将所述标识信息配置至所述软件的配置信息中,使用所述标识信息完成所述软件的个性化设置。
可选地,在所述将软件安装包中的安装程序文件解压至内存中步骤之前或之后,所述方法还包括:
将所述软件安装包中的压缩程序文件解压到内存中;
所述运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序,包括:
运行所述安装程序文件将解压到内存中的压缩程序文件从内存中复制到所述指定位置;
启动复制到所述指定位置的软件主程序。
根据本发明的另一方面,提供了一种软件安装装置,所述软件安装装置包括:
安装程序文件解压模块,用于将软件安装包中的安装程序文件解压至内存中,其中,所述软件安装包包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件;
软件安装模块,用于运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,进行软件的安装;
第一预启动模块,用于启动从所述软件安装包中解压缩的软件主程序;
后台安装模块,用于在启动从所述软件安装包中解压缩的软件主程序时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
可选地,所述后台安装模块,包括:
解压安装模块,用于在后台按照所述安装程序文件的引导,将所述压缩程序文件中除所述主程序文件外的其它程序文件解压至所述指定位置,直至将所有压缩程序文件解压至所述指定位置,完成所述软件安装包中所有程序文件的安装。
可选地,所述第一预启动模块,包括:
提示界面加载模块,用于加载欢迎提示界面,所述欢迎提示界面中包括启动选项,以提示用户是否启动所述软件主程序;
软件主程序启动模块,用于在用户触发所述启动选项之后,启动所述软件主程序。
可选地,所述装置还包括:
安装包生成模块,用于在所述安装程序文件解压模块将软件安装包中的安装程序文件解压至内存中之前,接收用户输入的标识信息,根据所述标识信息配置所述软件安装包中的安装程序文件和压缩程序文件,生成携带所述标识信息的软件安装包;
安装包获取模块,用于获取携带标识信息的软件安装包。
可选地,所述后台安装模块,还用于在所述安装程序文件进入后台继续引导软件安装时,将所述标识信息配置至所述软件的配置信息中,使用所述标识信息完成所述软件的个性化设置。
可选地,所述装置还包括:
压缩程序文件解压模块,用于将所述软件安装包中的压缩程序文件解压到内存中;
所述软件安装模块,包括:
软件复制模块,用于运行所述安装程序文件将解压到内存中的压缩程序文件从内存中复制到所述指定位置;
所述第一预启动模块包括:
第二预启动模块,用于启动复制到所述指定位置的软件主程序。
根据本发明提供的一种软件安装方案,首先将软件安装包分为了两部分,一部分是引导安装程序的安装程序文件,另一部分是压缩程序文件。在对软件安装包进行解压缩过程中,是将软件安装包中的安装程序文件解压到内存中,既提高了解压速度,又避免了与硬盘之间发生I/O交互操作,节约了时间。同时,用户可以在软件安装过程中,就启动从所述软件安装包中解压缩的软件主程序,不需要等待所有安装完成,提高了安装速度,减少了用户的等待时间,提升了用户的使用体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明第一实施例中一种软件安装方法的流程图;
图2是本发明第二实施例中一种软件安装方法的流程图;
图3是图2所示第二实施例中一种启动软件主程序的流程图;
图4是本发明第三实施例中一种软件安装方法的流程图;
图5是图4所示第三实施例中一种软件安装包的示意图;
图6是本发明第四实施例中一种软件安装方法的流程图;
图7是本发明第五实施例中一种软件安装装置的结构框图;
图8是本发明第六实施例中一种软件安装装置的结构框图;
图9是本发明第七实施例中一种软件安装装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,是本发明第一实施例中一种软件安装方法的流程图,在本发明实施例中。所述软件安装方法可以包括以下步骤:
步骤102,将软件安装包中的安装程序文件解压至内存中。
一般地,软件安装包是可自行解压缩文件的集合,其中包括软件安装的所有文件。运行这个安装包中的可执行文件,可以将此软件的所有文件释放到硬盘上,并完成修改注册表、修改系统设置、创建快捷方式等工作。而在本发明实施例中,将用于程序安装的所有文件分为两个部分,一部分是安装程序文件,用于引导安装程序,另一部分是其它资源程序文件。对这两部分文件分别进行压缩,打包进软件安装包中,使该软件安装包中包括引导安装程序的安装程序文件和压缩程序文件。在解压软件安装包中的安装程序文件时,并不是将安装程序文件解压到硬盘中,而是将安装程序文件解压到内存中,例如,在本发明实施例中,可以通过EnumResourceNames和LoadResource两个函数将软件安装包中的安装程序文件解压到内存中。其中,所述压缩程序文件,是软件安装包中除了安装程序文件之外的其它所有程序文件的集合,在所述压缩程序文件中可以包括软件主程序。
步骤104,运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序。
在本发明实施例中,通过运行解压到内存中的安装程序文件来引导软件进行安装,解压软件安装包中的压缩程序文件至硬盘中,例如,可以通过7Zip解压缩工具,将软件安装包中的压缩程序文件解压至硬盘中的指定位置。在解压软件安装包中的压缩程序文件至硬盘的过程中,可以优先选择解压压缩程序文件中的软件主程序,当软件主程序解压完成后,就可以直接启动从软件安装包中解压缩的软件主程序,不需要等待压缩程序文件中的其它文件解压完成。
步骤106,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
在本发明实施例中,在解压软件安装包中的压缩程序文件至硬盘的过程中,可以优先选择解压压缩程序文件中的软件主程序,当软件主程序解压完成后,启动软件主程序的同时,安装程序文件进入后台安装模式,在后台继续引导软件安装,直至完成软件安装包中所有程序文件的安装,后台引导安装过程不会影响用户启动并运行软件主程序。
综上所述,本发明实施例所述的一种软件安装方法,将软件的安装包分为了安装程序和压缩程序两部分,尽量高地进行压缩文件的压缩操作,可以使得安装包文件小;而且解压缩文件都是在内存中进行,仅与硬盘进行一次写操作,就可以完成软件的启动,避免了与硬盘进行多次I/O操作,缩短了解压时间,提高了软件安装效率。同时,在运行安装程序文件引导软件安装的过程中,优选解压压缩程序文件中的软件主程序,当软件主程序解压安装完成后,即可以启动软件主程序,其它安装操作则进入后台延时安装,由于只需要进行完软件主程序的安装就可以启动软件,缩短了软件从开始安装到启动所消耗的时间,提高了安装速度,减少了用户等待时间。
参照图2,是本发明第二实施例中一种软件安装方法的流程图,在本发明实施例中。所述软件安装方法可以包括以下步骤:
步骤202,将软件安装包中的安装程序文件解压至内存中。
步骤204,运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序。
在本发明一个实施例中,在运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置时,可以优先选择解压软件主程序,当软件主程序解压完成后,可以根据默认设置直接启动软件主程序;也可以通过如下步骤启动软件主程序,如图3所示,为本实施例中一种启动软件主程序的流程图,所述启动从所述软件安装包中解压缩的软件主程序,可以包括以下步骤:
步骤302,加载欢迎提示界面,所述欢迎提示界面中包括启动选项,以提示用户是否启动所述软件主程序。
步骤304,触发所述启动选项之后,启动所述软件主程序。
在本发明实施例中,通过加载一个欢迎提示界面,并由用户进行选择后,启动软件主程序,并同时进入后台的延时安装模式,由于软件主程序的安装速度很快,用户基本上体会不到软件安装的时间花销,就实现了软件启动。
步骤206,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
其中,在本发明实施例中,所述步骤206可以包括以下子步骤:
子步骤2062,在后台按照所述安装程序文件的引导,将所述压缩程序文件中除所述主程序文件外的其它程序文件解压至所述指定位置。
在本申请实施例中,可以在软件主程序启动时,在后台进行延时安装,例如,可以在后台进行注册表的写操作、快捷方式的生成和默认软件设置操作。
子步骤2064,直至将所有压缩程序文件解压至所述指定位置,完成所述软件安装包中所有程序文件的安装。
综上所述,本发明实施例所述的一种软件安装方法,当软件主程序解压安装完成后,可以加载一个欢迎提示界面,提醒用户是否启动软件,当用户点击启动时,可以直接启动软件主程序,其它安装操作,例如,注册表的写操作、快捷方式的生成和默认软件设置操作,则进入后台安装模式进行安装,直至所有程序文件安装完成。通过上述软件安装方法,缩短了软件从开始安装到用户启动软件所消耗的时间,减少了用户等待时间,用户基本上体会不到软件安装的时间花销,就实现了软件启动。同时,当软件在后台进行延时安装时,在上图中的延时安装步骤时,由于加载了一个欢迎提示界面,在用户在查看欢迎提示界面内容和对欢迎提示界面中的选项进行选择时,后台安装过程也在同时进行;而目前采用的安装方法,则是当软件中所有程序安装完成后,用户再花费时间启动软件,查看软件的启动界面和选择软件的启动界面中的选项,因此,通过本发明实施例提供的软件安装方法,节约了用户时间,提高了效率。
参照图4,是本发明第三实施例中一种软件安装方法的流程图,在本发明实施例中。所述软件安装方法可以包括以下步骤:
步骤402,接收用户输入的标识信息,根据所述标识信息配置所述软件安装包中的安装程序文件和压缩程序文件,生成携带所述标识信息的软件安装包。
在本发明实施例中,可以在安装包中设置一个接口,由第三方的服务器(软件用户的用户管理服务器)生成一个标识用户身份的唯一标识,所述标识可以是软件安装包文件的名字,或者是在软件包安装包文件中生成一个特定的标识模块,所述特定的标识模块可以用于进行用户名称标识的保存,还可以用于在安装时获取用户的标识,并在软件安装过程中依据用户的标识进行对应的显示。例如,用户通过第三方服务器提供的接口,输入了用户名称,第三方的服务器对用户输入的用户名称进行加密编解码,在后台服务器生成一个对应所述用户名称的用户标识,并可以将用户标识作为该安装包文件的名称,例如,TWInst_******.exe,其中的星号就是对于用户输入的用户名称TWInst进行加密编解码后生成的对应的加密密文,安装包在其安装程序中对该密文进行解密后,可以在安装过程中进行该软件的名称的设置。根据所述标识信息生成的携带所述标识信息的软件安装包,如图5所示,为本实施例中一种软件安装包的示意图,所述软件安装包500中可以包括:安装程序文件502,压缩程序文件504和可配置用户标识文件506。
进一步地,在本发明实施例中,并不仅限于在在安装过程中对软件的名称进行设置,例如,针对浏览器软件,还可以对浏览器的组件的进行配置,比如配置浏览器的功能,配置浏览器中的插件,这样就可以形成一个特定版本的浏览器。一些明星可以配置自己的特定浏览器软件安装包,然后发给其粉丝使用。
步骤404,获取携带标识信息的软件安装包。
步骤406,将软件安装包中的安装程序文件解压至内存中;
步骤408,运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序;
步骤410,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
在本发明实施例中,在所述安装程序文件进入后台继续引导软件安装时,可以将所述标识信息配置至所述软件的配置信息中,使用所述标识信息完成所述软件的个性化设置。例如,针对一个浏览器软件,可以将标识信息中的用户名称作为浏览器的默认账户进行使用,并进行后续的密码设置,成为一个正式的浏览器用户账号。
综上所述,本发明实施例提供的一种软件安装方法,是在内存中进行解压缩过程,与硬盘仅进行一次I/O操作,加速了软件安装的效率,实现了软件的快速安装。进一步地,本发明实施例提供的一种软件安装方法,可以通过第三方服务器,增加用户的设置操作,对软件安装包进行标识,使得软件安装包成为该用户的特定安装包,并可以生成特定用户的安装包文件;所述特定用户可以将自己配置的特定软件安装包分享给其他用户使用,其他用户在进行所述特定软件安装包的安装过程中,可以获取所述特定软件安装包中特定配置的安装程序文件和压缩程序文件,然后进行软件安装,促进了不同用户之间的交互性,同时,增强了软件安装包之间的差异性,使得软件安装完成后的结果多样化。
为了使上述软件安装方法便于理解,下面以一种浏览器软件的安装为实例来说明上述方法步骤的实现过程。其中,浏览器软件的软件安装包中可以包括:安装程序文件,压缩程序文件,其中压缩程序文件中包括:浏览器的主程序、浏览器的动态链接库文件、语言包文件、浏览器的皮肤文件、浏览器切换内核使用的数据文件和广告过滤使用文件。所述浏览器软件的安装步骤如下:
首先,通过压缩工具API(Application Programming Interface,API,应用程序编程接口),可以是EnumResourceNames函数和LoadResource函数,将安装程序文件解压到内存中。
然后,运行安装程序文件,引导浏览器软件的安装,将所述软件安装包中的压缩程序文件解压至指定位置,在将压缩程序文件解压至指定位置的过程中,优选将解压浏览器的主程序解压到硬盘中。
最后,当浏览器的主程序解压完成后,会加载一个欢迎提示界面,当用户点击欢迎提示界面上的启动选项时,可以启动浏览器的主程序;同时,安装程序文件进入后台继续引导安装,将浏览器的动态链接库文件、语言包文件、浏览器的皮肤文件、浏览器切换内核使用的数据文件和广告过滤使用文件解压至硬盘中的指定位置,直至完成所述软件安装包中所有程序文件的安装。
综上所述,本发明实施例所述的一种浏览器安装方法,是将安装程序文件解压到内存中,在运行安装程序文件引导软件安装时,将浏览器软件安装包中的程序文件解压到硬盘中,整个安装过程只与硬盘进行一次I/O交互,减少了程序文件解压安装时间;进一步地,当浏览器主程序安装完成后,就可以启动浏览器,使用浏览器浏览网页,提高了软件安装速度,减少了用户等待时间。
参照图6,是本发明第四实施例中一种软件安装方法的流程图,在本发明实施例中。所述软件安装方法可以包括以下步骤:
步骤602,将所述软件安装包中的压缩程序文件解压到内存中。
在本发明实施例中,所述软件安装方法可以包括但不仅限于将所述软件安装包中的压缩程序文件解压到内存中。
步骤604,将软件安装包中的安装程序文件解压至内存中。其中,所述软件安装包包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件。
这里需要说明的是,步骤602和步骤604直接没有必然的先后顺序,可以先进行步骤602再进行步骤604,也可以先进行步骤604再进行步骤602。在本发明实施例中,先进行步骤602再进行步骤604。通过步骤602和步骤604可以将软件安装包中的安装程序文件和压缩程序文件都解压到内存中。
在实际应用过程中,所述步骤602和所述步骤604都是在所述软件安装包的一次解压缩过程中完成的。
步骤606,运行所述安装程序文件将解压到内存中的压缩程序文件从内存中复制到所述指定位置。
在本发明实施例中,运行所述安装程序文件,可以通过movefile方法,将解压到内存中的压缩程序文件从内存中复制到硬盘中。其中,所述movefile方法可以将一个或多个文件从一个地方移动到另一个地方。
步骤608,启动复制到所述指定位置的软件主程序。
步骤610,安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
综上所述,本发明实施例所述的软件安装方法,安装程序文件和压缩程序文件的解压过程都可以在内存中进行,不与硬盘进行解压的交互操作,通过movefile方法将解压到内存中的文件直接复制到硬盘中,减少了与硬盘之间的交互次数,提供了软件安装效率,节约了时间。
需要说明的是,对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明所必需的。
基于同一发明构思,参照图7,是本发明第五实施例中一种软件安装装置的结构框图。本发明实施例所述一种软件安装装置可以包括如下模块:
安装程序文件解压模块702,用于将软件安装包中的安装程序文件解压至内存中。
在本发明实施例中,所述软件安装包可以包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件。
软件安装模块704,用于运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,进行软件的安装。
第一预启动模块706,用于启动从所述软件安装包中解压缩的软件主程序。
在本发明实施例中,当安装程序文件引导所述软件主程序完成解压缩安装后,第一预启动模块可以启动从所述软件安装包中解压缩的软件主程序。
后台安装模块708,用于在启动从所述软件安装包中解压缩的软件主程序时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
综上所述,本发明实施例所述的一种软件安装装置,通过API将安装程序文件解压到内存中的指定位置,同时,通过第一预启动模块,可以在软件主程序安装完成后就启动软件,而不需要等待所有安装程序安装完成,安装过程简单,避免了与硬盘进行多次交互,缩短了时间,提高了效率,从软件开始安装到启动软件耗时短,用户等待时间短。
参照图8,是本发明第六实施例中一种软件安装装置的结构框图。本发明实施例所述一种软件安装装置可以包括如下模块:
安装包生成模块802,用于在所述安装程序文件解压模块将软件安装包中的安装程序文件解压至内存中之前,接收用户输入的标识信息,根据所述标识信息配置所述软件安装包中的安装程序文件和压缩程序文件,生成携带所述标识信息的软件安装包。
安装包获取模块804,用于获取携带标识信息的软件安装包。
安装程序文件解压模块806,用于将软件安装包中的安装程序文件解压至内存中。其中,所述软件安装包包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件;
软件安装模块808,用于运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,进行软件的安装。
第一预启动模块810,用于启动从所述软件安装包中解压缩的软件主程序。
在本发明实施例中,所述第一预启动模块810可以包括以下模块:
提示界面加载模块8102,用于在软件主程序解压完成后,加载欢迎提示界面,所述欢迎提示界面中包括启动选项,以提示用户是否启动所述软件主程序;
软件主程序启动模块8104,用于在用户触发所述启动选项之后,启动所述软件主程序。
后台安装模块812,用于在启动从所述软件安装包中解压缩的软件主程序时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
在本发明实施例中,所述后台安装模块812,还可以用于在所述安装程序文件进入后台继续引导软件安装时,将所述标识信息配置至所述软件的配置信息中,使用所述标识信息完成所述软件的个性化设置。
进一步地,在本发明实施例中,所述后台安装模块712可以包括以下模块:
解压安装模块8122,用于在后台按照所述安装程序文件的引导,将所述压缩程序文件中除所述主程序文件外的其它程序文件解压至所述指定位置,直至将所有压缩程序文件解压至所述指定位置,完成所述软件安装包中所有程序文件的安装。
综上所述,本发明实施例所述的一种软件安装装置,可以通过软件安装包生成模块生成一个携带标识信息的定制软件包,根据定制软件安装包进行个性化软件安装,满足用户对软件安装包进行个性化配置的需求,同时增强了不同用户之间的互动性。
参照图9,是本发明第七实施例中一种软件安装装置的结构框图。本发明实施例所述一种软件安装装置可以包括如下模块:
压缩程序文件解压模块902,用于将所述软件安装包中的压缩程序文件解压到内存中。
安装程序文件解压模块904,用于将软件安装包中的安装程序文件解压至内存中。
在实际应用中,所述压缩程序文件解压模块902和所述安装程序文件解压模块904可以单独设置,也可以设置为一个模块,设置的一个模块可以用于将将软件安装包中的安装程序文件和压缩程序文件都解压到内存中。
软件复制模块906,用于运行所述安装程序文件将解压到内存中的压缩程序文件从内存中复制到所述指定位置。
第二预启动模块908,用于启动复制到所述指定位置的软件主程序。
后台安装模块910,用于在启动从所述软件安装包中解压缩的软件主程序时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
综上所述,本发明实施例所述的软件安装装置,可以将软件安装包中的所有程序文件都解压到内存中,通过软件复制模块,运行安装程序文件将解压到内存中的压缩程序文件复制到指定位置,解压过程中不与硬盘进行I/O交互,节约了软件安装包的解压缩过程所需的时间,提高了软件安装效率。
对于上述一种软件安装装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本发明的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一种软件安装设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种软件安装方法,包括:
将软件安装包中的安装程序文件解压至内存中,其中,所述软件安装包包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件;
运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序;同时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
A2、根据A1所述的方法,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装,包括:
在后台按照所述安装程序文件的引导,将所述压缩程序文件中除所述主程序文件外的其它程序文件解压至所述指定位置;
直至将所有压缩程序文件解压至所述指定位置,完成所述软件安装包中所有程序文件的安装。
A3、根据A1所述的方法,所述启动从所述软件安装包中解压缩的软件主程序,包括:
加载欢迎提示界面,所述欢迎提示界面中包括启动选项,以提示用户是否启动所述软件主程序;
触发所述启动选项之后,启动所述软件主程序。
A4、根据A1所述的方法,在将软件安装包中的安装程序文件解压至内存中之前,还包括:
接收用户输入的标识信息,根据所述标识信息配置所述软件安装包中的安装程序文件和压缩程序文件,生成携带所述标识信息的软件安装包;
获取携带标识信息的软件安装包。
A5、根据A4所述的方法,还包括:
在所述安装程序文件进入后台继续引导软件安装时,将所述标识信息配置至所述软件的配置信息中,使用所述标识信息完成所述软件的个性化设置。
A6、根据A1所述的方法,在所述将软件安装包中的安装程序文件解压至内存中步骤之前或之后,所述方法还包括:
将所述软件安装包中的压缩程序文件解压到内存中;
所述运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序,包括:
运行所述安装程序文件将解压到内存中的压缩程序文件从内存中复制到所述指定位置;
启动复制到所述指定位置的软件主程序。
本发明还公开了B7、一种软件安装装置,包括:
安装程序文件解压模块,用于将软件安装包中的安装程序文件解压至内存中,其中,所述软件安装包包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件;
软件安装模块,用于运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,进行软件的安装;
第一预启动模块,用于启动从所述软件安装包中解压缩的软件主程序;
后台安装模块,用于在启动从所述软件安装包中解压缩的软件主程序时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
B8、根据B7所述的装置,所述后台安装模块,包括:
解压安装模块,用于在后台按照所述安装程序文件的引导,将所述压缩程序文件中除所述主程序文件外的其它程序文件解压至所述指定位置,直至将所有压缩程序文件解压至所述指定位置,完成所述软件安装包中所有程序文件的安装。
B9、根据B7所述的装置,所述第一预启动模块,包括:
提示界面加载模块,用于加载欢迎提示界面,所述欢迎提示界面中包括启动选项,以提示用户是否启动所述软件主程序;
软件主程序启动模块,用于在用户触发所述启动选项之后,启动所述软件主程序。
B10、根据B7所述的装置,所述装置还包括:
安装包生成模块,用于在所述安装程序文件解压模块将软件安装包中的安装程序文件解压至内存中之前,接收用户输入的标识信息,根据所述标识信息配置所述软件安装包中的安装程序文件和压缩程序文件,生成携带所述标识信息的软件安装包;
安装包获取模块,用于获取携带标识信息的软件安装包。
B11、根据B10所述的装置,所述后台安装模块,还用于在所述安装程序文件进入后台继续引导软件安装时,将所述标识信息配置至所述软件的配置信息中,使用所述标识信息完成所述软件的个性化设置。
B12、根据B7所述的装置,所述装置还包括:
压缩程序文件解压模块,用于将所述软件安装包中的压缩程序文件解压到内存中;
所述软件安装模块,包括:
软件复制模块,用于运行所述安装程序文件将解压到内存中的压缩程序文件从内存中复制到所述指定位置;
所述第一预启动模块包括:
第二预启动模块,用于启动复制到所述指定位置的软件主程序。

Claims (10)

1.一种软件安装方法,包括:
将软件安装包中的安装程序文件解压至内存中,其中,所述软件安装包包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件;
运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序;同时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
2.根据权利要求1所述的方法,其特征在于,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装,包括:
在后台按照所述安装程序文件的引导,将所述压缩程序文件中除所述主程序文件外的其它程序文件解压至所述指定位置;
直至将所有压缩程序文件解压至所述指定位置,完成所述软件安装包中所有程序文件的安装。
3.根据权利要求1所述的方法,其特征在于,所述启动从所述软件安装包中解压缩的软件主程序,包括:
加载欢迎提示界面,所述欢迎提示界面中包括启动选项,以提示用户是否启动所述软件主程序;
触发所述启动选项之后,启动所述软件主程序。
4.根据权利要求1所述的方法,其特征在于,在将软件安装包中的安装程序文件解压至内存中之前,还包括:
接收用户输入的标识信息,根据所述标识信息配置所述软件安装包中的安装程序文件和压缩程序文件,生成携带所述标识信息的软件安装包;
获取携带标识信息的软件安装包。
5.根据权利要求4所述的方法,其特征在于,还包括:
在所述安装程序文件进入后台继续引导软件安装时,将所述标识信息配置至所述软件的配置信息中,使用所述标识信息完成所述软件的个性化设置。
6.根据权利要求1所述的方法,其特征在于,在所述将软件安装包中的安装程序文件解压至内存中步骤之前或之后,所述方法还包括:
将所述软件安装包中的压缩程序文件解压到内存中;
所述运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,启动从所述软件安装包中解压缩的软件主程序,包括:
运行所述安装程序文件将解压到内存中的压缩程序文件从内存中复制到所述指定位置;
启动复制到所述指定位置的软件主程序。
7.一种软件安装装置,包括:
安装程序文件解压模块,用于将软件安装包中的安装程序文件解压至内存中,其中,所述软件安装包包括引导安装程序的安装程序文件、和压缩程序文件,所述压缩程序文件包括了所述软件安装包中除所述安装程序文件之外的其它程序文件;
软件安装模块,用于运行所述安装程序文件将所述软件安装包中的压缩程序文件解压至指定位置,进行软件的安装;
第一预启动模块,用于启动从所述软件安装包中解压缩的软件主程序;
后台安装模块,用于在启动从所述软件安装包中解压缩的软件主程序时,所述安装程序文件进入后台继续引导软件安装,直至完成所述软件安装包中所有程序文件的安装。
8.根据权利要求7所述的装置,其特征在于,所述后台安装模块,包括:
解压安装模块,用于在后台按照所述安装程序文件的引导,将所述压缩程序文件中除所述主程序文件外的其它程序文件解压至所述指定位置,直至将所有压缩程序文件解压至所述指定位置,完成所述软件安装包中所有程序文件的安装。
9.根据权利要求7所述的装置,其特征在于,所述第一预启动模块,包括:
提示界面加载模块,用于加载欢迎提示界面,所述欢迎提示界面中包括启动选项,以提示用户是否启动所述软件主程序;
软件主程序启动模块,用于在用户触发所述启动选项之后,启动所述软件主程序。
10.根据权利要求7所述的装置,其特征在于,还包括:
安装包生成模块,用于在所述安装程序文件解压模块将软件安装包中的安装程序文件解压至内存中之前,接收用户输入的标识信息,根据所述标识信息配置所述软件安装包中的安装程序文件和压缩程序文件,生成携带所述标识信息的软件安装包;
安装包获取模块,用于获取携带标识信息的软件安装包。
CN201310499979.7A 2013-10-22 2013-10-22 一种软件安装方法和装置 Active CN103577225B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310499979.7A CN103577225B (zh) 2013-10-22 2013-10-22 一种软件安装方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310499979.7A CN103577225B (zh) 2013-10-22 2013-10-22 一种软件安装方法和装置

Publications (2)

Publication Number Publication Date
CN103577225A true CN103577225A (zh) 2014-02-12
CN103577225B CN103577225B (zh) 2016-11-23

Family

ID=50049072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310499979.7A Active CN103577225B (zh) 2013-10-22 2013-10-22 一种软件安装方法和装置

Country Status (1)

Country Link
CN (1) CN103577225B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103955375A (zh) * 2014-05-21 2014-07-30 北京安兔兔科技有限公司 一种应用安装文件的生成方法、应用的启动方法及装置
CN105302582A (zh) * 2014-06-09 2016-02-03 腾讯科技(深圳)有限公司 安装界面展示方法及装置
CN105446775A (zh) * 2015-11-20 2016-03-30 北京奇虎科技有限公司 游戏安装包的配置化生成方法及装置
CN105988834A (zh) * 2015-02-12 2016-10-05 腾讯科技(深圳)有限公司 一种应用安装包生成、安装方法及装置
CN106406923A (zh) * 2015-07-30 2017-02-15 腾讯科技(深圳)有限公司 动态库文件的处理方法及装置
CN103984897B (zh) * 2014-05-29 2017-03-08 北京奇虎科技有限公司 一种在软件安装过程中阻止病毒入侵的方法及装置
CN108108203A (zh) * 2016-11-25 2018-06-01 阿里巴巴集团控股有限公司 用于安装包下载安装过程的方法、装置及系统
CN108334782A (zh) * 2018-05-16 2018-07-27 王红 计算机软件安装方法
CN113849465A (zh) * 2021-08-30 2021-12-28 岚图汽车科技有限公司 软件包生成方法、装置、存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7322042B2 (en) * 2003-02-07 2008-01-22 Broadon Communications Corp. Secure and backward-compatible processor and secure software execution thereon
CN101526902A (zh) * 2008-12-25 2009-09-09 北京邮电大学 用于移动终端的可执行文件压缩及加载技术
CN102053831A (zh) * 2010-12-10 2011-05-11 浪潮(北京)电子信息产业有限公司 一种Linux操作系统的定制方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7322042B2 (en) * 2003-02-07 2008-01-22 Broadon Communications Corp. Secure and backward-compatible processor and secure software execution thereon
CN101526902A (zh) * 2008-12-25 2009-09-09 北京邮电大学 用于移动终端的可执行文件压缩及加载技术
CN102053831A (zh) * 2010-12-10 2011-05-11 浪潮(北京)电子信息产业有限公司 一种Linux操作系统的定制方法及系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103955375A (zh) * 2014-05-21 2014-07-30 北京安兔兔科技有限公司 一种应用安装文件的生成方法、应用的启动方法及装置
CN103984897B (zh) * 2014-05-29 2017-03-08 北京奇虎科技有限公司 一种在软件安装过程中阻止病毒入侵的方法及装置
CN105302582A (zh) * 2014-06-09 2016-02-03 腾讯科技(深圳)有限公司 安装界面展示方法及装置
CN105302582B (zh) * 2014-06-09 2019-04-05 腾讯科技(深圳)有限公司 安装界面展示方法及装置
CN105988834A (zh) * 2015-02-12 2016-10-05 腾讯科技(深圳)有限公司 一种应用安装包生成、安装方法及装置
CN105988834B (zh) * 2015-02-12 2019-11-19 腾讯科技(深圳)有限公司 一种应用安装包生成、安装方法及装置
CN106406923A (zh) * 2015-07-30 2017-02-15 腾讯科技(深圳)有限公司 动态库文件的处理方法及装置
CN105446775B (zh) * 2015-11-20 2019-02-01 北京奇虎科技有限公司 游戏安装包的配置化生成方法及装置
CN105446775A (zh) * 2015-11-20 2016-03-30 北京奇虎科技有限公司 游戏安装包的配置化生成方法及装置
CN108108203A (zh) * 2016-11-25 2018-06-01 阿里巴巴集团控股有限公司 用于安装包下载安装过程的方法、装置及系统
CN108108203B (zh) * 2016-11-25 2021-02-26 斑马智行网络(香港)有限公司 用于安装包下载安装过程的方法、装置及系统
CN108334782A (zh) * 2018-05-16 2018-07-27 王红 计算机软件安装方法
CN113849465A (zh) * 2021-08-30 2021-12-28 岚图汽车科技有限公司 软件包生成方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN103577225B (zh) 2016-11-23

Similar Documents

Publication Publication Date Title
CN103577225A (zh) 一种软件安装方法和装置
CN106970873B (zh) 线上mock测试方法、装置及系统
CN107038042B (zh) 一种业务执行的方法及装置
Mikkonen et al. Apps vs. open web: The battle of the decade
CN102289378B (zh) 自动生成应用程序的方法
US20200065124A1 (en) Shortening just-in-time code warm up time of docker containers
JP6506412B2 (ja) アプリケーションロード方法及び装置
CN105573734B (zh) 一种用于提供sdk文件的方法与设备
CN107479868B (zh) 一种界面加载方法、装置及设备
US20110214076A1 (en) Method and apparatus for optimizing generation of user interface
CN107239309B (zh) 补丁生成方法及装置、更新方法、电子设备、存储介质
CN102664874A (zh) 一种安全登陆的方法和系统
CN111796821A (zh) 一种页面更新的方法及装置
CN111722995B (zh) 一种数据处理方法及装置
CN106970872B (zh) 信息埋点方法及装置
CN112579955A (zh) 一种页面访问方法、设备、介质及电子设备
CN103744667A (zh) 一种基于Silverlight实现组态功能的系统
CN103176903A (zh) MapReduce分布式系统程序的测试方法及设备
CN1703675B (zh) 加速多媒体内容的方法和设备
AU2017227739B2 (en) Automated testing method for application program user interface, electronic device, system, and storage medium
CN114238934A (zh) 一种设备信息获取方法、装置、设备及介质
CN104199862A (zh) 基于内容提供方定制的搜索方法、服务器和系统
US11080683B2 (en) DOI display and transaction information verification
CN104461557A (zh) Puppet配置数据的处理方法及装置
CN113961286A (zh) 一种应用程序的页面生成方法、装置及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220725

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right