CN102955702B - 一种软件安装及升级方法和装置 - Google Patents

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

Info

Publication number
CN102955702B
CN102955702B CN201110243128.7A CN201110243128A CN102955702B CN 102955702 B CN102955702 B CN 102955702B CN 201110243128 A CN201110243128 A CN 201110243128A CN 102955702 B CN102955702 B CN 102955702B
Authority
CN
China
Prior art keywords
software
upgrading
catalogue
download
release directory
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.)
Active
Application number
CN201110243128.7A
Other languages
English (en)
Other versions
CN102955702A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201110243128.7A priority Critical patent/CN102955702B/zh
Priority to PCT/CN2012/078356 priority patent/WO2013026332A1/zh
Publication of CN102955702A publication Critical patent/CN102955702A/zh
Priority to US14/187,792 priority patent/US9606791B2/en
Application granted granted Critical
Publication of CN102955702B publication Critical patent/CN102955702B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Abstract

本发明公开了一种软件安装及升级方法和装置,方法包括:创建当前版本号的版本目录,将该版本目录放置在与软件的主程序文件同级的目录下,将当前版本软件的资源文件放置在该版本目录中;软件主程序开始运行时,搜索与主程序文件同级目录下版本号最新的版本目录,并加载该版本目录;在软件运行时下载并安装升级软件,创建新版本号对应的版本目录,将该新版本号的版本目录放置在与所述旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中。所述装置包括:初始安装模块、主程序文件和升级进程模块。利用本发明,可以实现软件的静默升级,减少升级过程中的人机交互次数,方便用户使用软件。

Description

一种软件安装及升级方法和装置
技术领域
本发明涉及数据处理设备的软件技术领域,尤其涉及一种软件安装及升级的方法和装置。
背景技术
计算机软件经过了几十年的发展,慢慢地与互联网融合为一体。开放与合作已经成为互联网技术发展的必然趋势,未来的互联网可以“更多的融入”,也能更多地分享和收获。打造一个更加开发平台将使整个互联网的用户有一个全新的体验。同时用户的使用习惯不断在变化,软件的更新频率不断缩短,新的功能迭代速度很快,这就要求软件本身的升级足够强大,以便更好的满足用户需求。
现有的计算机桌面软件安装及升级方法通常是:在安装时,将主程序文件,即可执行主程序(.exe格式)文件与资源文件比如所需要加载的.dll文件放在同级目录下,这样的好处是Windows操作系统会默认首先加载.exe文件同级的目录,方便快速找到相应的资源如dll文件。在进行软件升级时,通常都需要当前主程序(.exe)先退出,然后完成升级软件包的下载和安装过程,接下来需要用户再次启动软件才可以看到升级后的功能。
现有的这种软件安装及升级方法的缺点是:
升级时必须首先人工退出当前主程序,才能完整升级软件的安装,不但导致需要用户进行过多的人机交互操作,而且严重干扰了用户使用当前软件,用户体验不好。同时,现有的大多数桌面软件需要用户手工触发软件升级,而实际上通过用户操作的数据来看,用户手动点击软件升级的比率并不大,给用户的使用带来了不必要的门槛。
因此,现有技术无法做到在主程序运行的过程中完成整个软件的静默升级。所谓软件静默升级是指:在正常使用软件的过程中,该软件可以做到自动升级,而用户在前端使用时完全没有感知该升级过程,升级完成后,用户下次启动软件,就能直接使用更新后的软件。
发明内容
有鉴于此,本发明的主要目的在于提供一种软件安装及升级方法和装置,以实现软件的静默升级,减少升级过程中的人机交互次数,方便用户使用软件。
本发明的技术方案是这样实现的:
一种软件安装及升级方法,包括:
创建当前版本号的版本目录,将该版本目录放置在与软件的主程序文件同级的目录下,将当前版本软件的资源文件放置在该版本目录中;
软件主程序开始运行时,搜索与主程序文件同级目录下版本号最新的版本目录,并加载该版本目录;
在软件主程序运行时启动升级进程下载并安装升级软件,在安装升级软件时,创建当前升级软件的新版本号对应的版本目录,将该新版本号的版本目录放置在与旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中。
一种软件安装及升级装置,包括:
初始安装模块,用于软件的初始安装,在初始安装时,创建当前版本号的版本目录,将该版本目录放置在与软件的主程序文件同级的目录下,将当前版本软件的资源文件放置在该版本目录中;
主程序文件,用于启动运行软件主程序,并在开始运行时,搜索同级目录下版本号最新的版本目录,并加载该版本目录;
升级进程模块,用于在软件运行时启动,启动后下载并安装升级软件,在安装升级软件时,创建当前升级软件的新版本号对应的版本目录,将该新版本号的版本目录放置在与旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中。
与现有技术相比,本发明所提供的方案采用每个版本软件的资源文件放置在对应的版本目录中,所有版本目录放置在与软件的可执行文件同级的目录下,并且软件的所述可执行文件在开始执行时,搜索同级目录下版本号最新的版本目录,并加载该版本目录。因此,本发明可以实现在正常使用软件的过程中,不用退出软件,就可以做到自动升级安装,而用户在前端使用时完全感知不到该升级过程,升级完成后,用户下次启动软件,就能直接使用更新后的软件,从而实现软件的静默升级,减少升级过程中的人机交互次数,方便用户操作,提升用户的使用体验。
附图说明
图1为本发明所述软件安装及升级方法的流程图;
图2为本发明所述软件初始安装时的目录结构示意图;
图3为本发明所述软件升级安装后的目录结构示意图;
图4为本发明所述升级过程的一种详细实施流程图;
图5为本发明所述的软件安装及升级装置的一种实施示意图;
图6为本发明所述的软件安装及升级装置的另一种实施示意图;
图7为本发明所述升级进程模块的一种具体组成示意图。
具体实施方式
下面结合附图及具体实施例对本发明再作进一步详细的说明。
本发明不但适用于计算机,还可以适用于各种数据处理设备(如智能手机、平板电脑等)。
图1为本发明所述软件安装及升级方法的流程图。参见图1,该方法包括:
步骤101、创建当前版本号的版本目录,将该版本目录放置在与软件的主程序文件同级的目录下,将当前版本软件的资源文件放置在该版本目录中。在优选实施方式中,本步骤可以在初始安装软件时执行,当然在其他实施方式中也可以在其它时机如服务器指定的时机执行。
步骤102、软件主程序(即主exe程序)开始运行时,搜索与主程序文件同级目录下版本号最新的版本目录,并加载该版本目录。
步骤103、在软件主程序启动运行后,启动升级进程,由升级进程下载并安装升级软件,在安装升级软件时,创建当前升级软件的新版本号对应的版本目录,将该新版本号的版本目录放置在与所述旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中。
所述升级进程在完成升级软件的下载和安装后,会自动退出,对主程序的进程完全没有影响。当主程序下次启动时,主程序会搜索与主程序文件同级目录下版本号最新的版本目录,并加载该版本目录,从而完成运行升级版本目录的过程,使用户可以看到更新后的软件功能,而整个升级过程对用户来说是完全透明的,用户察觉不到升级过程的发生。
图2为本发明所述软件初始安装时的目录结构示意图。参见图2,本发明与现有技术的软件安装目录不同,现有技术通常是将主程序exe文件与资源文件比如所需要加载的.dll放在同级目录下,而本发明将主程序exe文件外提到更外层目录,如图2所示的主程序exe文件201,设置在了软件的根目录下,而软件运行时需要加载的资源文件如.dll文件都放置在当前版本号的版本目录202中,该版本目录202放置在与所述主程序exe文件201同级的目录下,例如此处为根目录下。所述主程序exe文件201实际上只是个空壳,它的作用只是搜索同级目录下版本号更新的版本目录,并加载该版本目录。
图3为本发明所述软件升级安装后的目录结构示意图。参见图3,利用本发明对升级软件进行下载并安装升级后,升级软件(通常为升级包)实际上会在安装目录下解压,所有资源文件都放置在当前升级软件的新版本号对应的版本目录301中,而旧版本目录202和主程序exe文件201的位置不变,因此在升级时,对当前运行的主程序完全没有影响,待用户下次启动时,自动加载更新的版本目录,即可运行新版本的软件。
本发明在改变了主程序文件的放置目录后,操作系统会按自身的目录搜索顺序查找文件,Windows提供了一个应用程序编程接口(API)可以设置应用程序加载.dll资源文件的搜索顺序,该API为:
BOOL WINAPI SetDllDirectory(LPCTSTR lpPathName)
软件主程序利用该API,可以使得主程序文件外提后,操作系统搜索.dll的目录顺序不变,从而可以顺利加载资源文件。
本发明中,由于软件本身的静默升级的需要,当软件多次升级后,实际上在用户安装目录会有多个版本目录文件夹,如果按照现有的桌面软件的安装、卸载的过程则通常需要一一配对,例如使用Microsoft软件安装(MSI)工具制作的安装包,在卸载软件的时候只能卸载与该版本匹配的安装目录文件,而并不能达到整个软件不留痕迹的彻底清除。因此本发明可以利用Nullsoft脚本安装系统(NSIS,Nullsoft Scriptable Install System)脚本重新编写卸载程序来控制软件的卸载行为,如图3所示的卸载程序302,用于完全卸载软件。所述NSIS为Windows下支持脚本的安装程序,完全免费,开放源代码,支持脚本,可以通过编写脚本来控制安装过程的任何细节。所述利用NSIS生成的卸载程序302可打包进主安装包中,在该卸载程序302启动后即可实施对软件的卸载,卸载的实质操作就是将与所述主程序文件201同级目录下的所有文件和文件夹全部删除,即删除QPlus.exe根目录下的所有文件以及文件夹,因此可以将整个软件(包括各个版本的软件)不留痕迹地彻底清除,同时该卸载程序在以后的软件升级中无需变化,其维护成本可降低为零。
图4为本发明所述升级过程的一种详细实施流程图。参见图4,该流程包括:
步骤401、启动主程序,开始运行。
步骤402、主程序启动升级进程。
此处,由于整个升级过程涉及到与升级服务器的多次交互过程,为了尽可能的减少客户端对于服务器的请求量,要对查询的频率有一定的控制。因此在另一种实施例中,在启动升级进程之前即步骤402之前,可以进一步包括:查询当前系统内是否运行有一个以上所述软件主程序的实例,如果是则利用第一个运行的主程序实例启动所述升级进程;否则直接利用所述软件主程序实例启动所述升级进程。利用这种方式,可以控制升级查询的频率,减少客户端对服务器的请求量。
步骤403、启动升级进程后,升级进程首先会完成一次升级进程自升级的查询过程,即升级进程与服务器交互判断是否要自升级,即判断服务器是否有比本地更新版本的升级程序文件,如果是则下载新版本的升级程序exe文件,并退出升级进程;否则执行步骤404。当然本步骤403为可选步骤,也可以跳过本步骤,直接执行步骤404。
步骤404、升级进程与服务器交互判断是否需要升级软件,即判断服务器是否有更新版本的升级软件,如果是则执行步骤405,否则退出升级进程。
步骤405、下载新版本的升级软件,例如升级软件通常是以升级包的形式,因此可以下载新版本的升级包。
步骤406、安装升级包,创建当前升级软件的新版本号对应的版本目录,将该新版本号的版本目录放置在与所述旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中,之后退出升级进程。
由于升级包属于敏感数据,因此在另一种实施例中,在下载得到升级软件后、安装升级软件之前,即步骤405和406之间,进一步包括:对所述下载得到的升级包做MD5值匹配,如果匹配则执行步骤B进行软件升级安装,如果不匹配则判定本次下载失败,删除所述下载的软件升级包,重复下载所述软件升级包,若下载失败的次数达到指定次数(如最多3次),则结束下载流程,退出升级进程。
与上述方法对应,本发明还公开了一种软件安装及升级装置。图5为本发明所述的软件安装及升级装置的一种实施示意图。参见图5,该装置500包括:
初始安装模块501,用于软件的初始安装,在初始安装时,创建当前版本号的版本目录,将该版本目录放置在与软件的主程序文件502同级的目录下,将当前版本软件的资源文件放置在该版本目录中;如图2所示。
主程序文件502,用于启动运行软件主程序,并在开始运行时,搜索同级目录下版本号最新的版本目录,并加载该版本目录。
升级进程模块503,用于在软件运行时启动,启动后下载并安装升级软件,在安装升级软件时,创建当前升级软件的新版本号对应的版本目录,将该新版本号的版本目录放置在与所述旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中,如图3所示。
图6为本发明所述的软件安装及升级装置的另一种实施示意图。参见图6,为了将整个软件(包括各个版本的软件)不留痕迹地彻底清除,该装置进一步包括卸载模块504,用于将与所述主程序文件同级目录下的所有文件和文件夹全部删除。为了降低客户端与服务器的请求量,该装置还可以进一步包括查询模块505,用于查询当前系统内是否运行有一个以上所述软件主程序的实例,如果是则利用第一个运行的主程序实例启动所述升级进程模块503;否则直接利用所述软件主程序实例启动所述升级进程模块503。
图7为本发明所述升级进程模块的一种具体组成示意图。参见图7,所述升级进程模块中包括:
升级进程自升级模块701,用于在下载升级软件之前,首先与服务器交互判断是否要自升级,如果是则下载新版本的升级程序文件,并退出升级进程;否则再触发升级进程模块下载并安装所述升级软件。
版本升级模块702,用于在下载升级软件之前与服务器交互判断是否需要升级软件,如果是则触发下载并安装新版本的升级软件;否则退出升级过程。
升级软件下载模块703,用于从服务器下载新版本的升级软件包。
校验模块704,用于在下载得到升级软件包后、安装升级软件包之前,对所述下载得到的升级软件做MD5值匹配,如果匹配则触发升级软件安装模块安装升级软件,如果不匹配则判定本次下载失败,删除所述下载的升级软件,并触发所述升级软件下载模块重新下载所述升级软件包,若下载失败的次数达到指定次数(如最多3次),则退出升级过程。
升级软件安装模块705,用于安装所下载的升级软件包,在安装时,创建当前升级软件的新版本号对应的版本目录,将该新版本号的版本目录放置在与所述旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中。
当然,所述升级进程自升级模块701和所述校验模块704是可选模块,在其他实施例中可以自由选择。
本发明通过软件安装包中特殊的文件布局以及升级进程的控制,可以有效的降低后期对于软件升级的运营和维护成本,并且具有升级进程自升级等强有力的能力。
本发明尤其可以适用于桌面开放软件,桌面开放软件除了具有普通软件安装,卸载的通常功能外,还需结合软件自身特点实现快速静默升级,可以更好的满足用户对于软件安装以及卸载的基本要求。用户在使用软件的过程中,希望可以体验到软件最新的功能,而操作软件升级本身有是一件相对繁琐的事情,而本发明可以提供静默升级的功能,可以有效降低用户对桌面开放软件的使用门槛。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (12)

1.一种软件安装及升级方法,其特征在于,包括:
设置应用程序加载资源文件的搜索顺序;
创建当前版本号的版本目录,将该版本目录放置在与软件的主程序exe文件同级的目录下,将当前版本软件的资源文件放置在该版本目录中;
软件主程序开始运行时,搜索与主程序exe文件同级目录下版本号最新的版本目录,并加载该版本目录;
在软件主程序运行时启动升级进程下载并安装升级软件,在安装升级软件时,创建当前升级软件的新版本号对应的版本目录,将该新版本号的版本目录放置在与旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中,旧版本目录和主程序exe文件的位置不变。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括:在卸载软件时,将与所述主程序exe文件同级目录下的所有文件和文件夹全部删除。
3.根据权利要求1所述的方法,其特征在于,在启动升级进程之前,进一步包括:查询当前系统内是否运行有一个以上所述软件主程序的实例,如果是则利用第一个运行的主程序实例启动所述升级进程;否则直接利用所述软件主程序实例启动所述升级进程。
4.根据权利要求1所述的方法,其特征在于,所述升级进程在启动之后、下载升级软件之前,首先与服务器交互判断是否要自升级,如果是则下载新版本的升级程序文件,并退出升级进程;否则再下载并安装所述升级软件。
5.根据权利要求1所述的方法,其特征在于,该方法在下载升级软件之前,进一步包括:与服务器交互判断是否需要升级软件,如果是则下载并安装新版本的升级软件;否则退出升级进程。
6.根据权利要求1所述的方法,其特征在于,在下载得到升级软件后、安装升级软件之前,进一步包括:对所述下载得到的升级软件做MD5值匹配,如果匹配则安装升级软件,如果不匹配则判定本次下载失败,删除所述下载的升级软件,并重新下载所述升级软件,若下载失败的次数达到指定次数,则结束下载流程。
7.一种软件安装及升级装置,其特征在于,包括:
初始安装模块,用于软件的初始安装,在初始安装时,创建当前版本号的版本目录,将该版本目录放置在与软件的主程序exe文件同级的目录下,将当前版本软件的资源文件放置在该版本目录中;
主程序exe文件,用于设置应用程序加载资源文件的搜索顺序,启动运行软件主程序,并在开始运行时,搜索同级目录下版本号最新的版本目录,并加载该版本目录;
升级进程模块,用于在软件运行时启动,启动后下载并安装升级软件,在安装升级软件时,创建当前升级软件的新版本号对应的版本目录,将该新版本号的版本目录放置在与旧版本目录同级的目录下,将新版本软件的资源文件放置在该新版本号的版本目录中,旧版本目录和主程序exe文件的位置不变。
8.根据权利要求7所述的装置,其特征在于,该装置进一步包括卸载模块,用于将与所述主程序exe文件同级目录下的所有文件和文件夹全部删除。
9.根据权利要求7所述的装置,其特征在于,该装置进一步包括:查询模块,用于查询当前系统内是否运行有一个以上所述软件主程序的实例,如果是则利用第一个运行的主程序实例启动所述升级进程模块;否则直接利用所述软件主程序实例启动所述升级进程模块。
10.根据权利要求7所述的装置,其特征在于,所述升级进程模块中包括升级进程自升级模块,用于在下载升级软件之前,首先与服务器交互判断是否要自升级,如果是则下载新版本的升级程序文件,并退出升级进程;否则再触发升级进程模块下载并安装所述升级软件。
11.根据权利要求7所述的装置,其特征在于,所述升级进程模块中包括版本升级模块,用于在下载升级软件之前与服务器交互判断是否需要升级软件,如果是则触发下载并安装新版本的升级软件;否则退出升级过程。
12.根据权利要求7所述的装置,其特征在于,所述升级进程模块中包括校验模块,用于在下载得到升级软件后、安装升级软件之前,对所述下载得到的升级软件做MD5值匹配,如果匹配则触发所述升级进程模块安装升级软件,如果不匹配则判定本次下载失败,删除所述下载的升级软件,并触发升级进程模块重新下载所述升级软件,若下载失败的次数达到指定次数,则退出升级过程。
CN201110243128.7A 2011-08-23 2011-08-23 一种软件安装及升级方法和装置 Active CN102955702B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201110243128.7A CN102955702B (zh) 2011-08-23 2011-08-23 一种软件安装及升级方法和装置
PCT/CN2012/078356 WO2013026332A1 (zh) 2011-08-23 2012-07-09 一种软件安装及升级方法和装置
US14/187,792 US9606791B2 (en) 2011-08-23 2014-02-24 Controlled method and apparatus to securely install and update software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110243128.7A CN102955702B (zh) 2011-08-23 2011-08-23 一种软件安装及升级方法和装置

Publications (2)

Publication Number Publication Date
CN102955702A CN102955702A (zh) 2013-03-06
CN102955702B true CN102955702B (zh) 2016-08-10

Family

ID=47745916

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110243128.7A Active CN102955702B (zh) 2011-08-23 2011-08-23 一种软件安装及升级方法和装置

Country Status (3)

Country Link
US (1) US9606791B2 (zh)
CN (1) CN102955702B (zh)
WO (1) WO2013026332A1 (zh)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104066485B (zh) * 2012-01-24 2017-03-08 索尼电脑娱乐公司 信息处理设备和信息处理系统
US10095501B2 (en) * 2013-03-15 2018-10-09 Oracle International Corporation Deployment and activation of updates on target hosts
US9128793B2 (en) * 2013-05-14 2015-09-08 Tencent Technology (Shenzhen) Company Limited Method, system and server for downloading installation package
CN103942067B (zh) * 2014-03-31 2017-11-03 广东欧珀移动通信有限公司 智能设备自动清理软件安装包文件的方法及装置
CN104007992A (zh) * 2014-06-09 2014-08-27 广州华多网络科技有限公司 程序更新、启动方法及其装置
US9619244B2 (en) * 2014-09-05 2017-04-11 Xiaomi Inc. Method and system for upgrading an electronic device
CN105468395B (zh) * 2014-09-10 2019-11-05 阿里巴巴集团控股有限公司 更新方法、装置及系统
CN105653300B (zh) * 2014-11-12 2019-06-28 鸿富锦精密电子(天津)有限公司 名称导向式的应用系统升级系统及方法
US10078619B2 (en) 2014-12-16 2018-09-18 International Business Machines Corporation Dynamic association of application workload tiers to infrastructure elements in a cloud computing environment
CN105786538B (zh) * 2014-12-24 2019-12-06 深圳市贰陆陆科技有限公司 基于安卓系统的软件升级方法和装置
CN106155723B (zh) * 2015-04-13 2020-12-22 腾讯科技(深圳)有限公司 业务应用程序的升级方法和装置、终端和计算机存储介质
CN104978224B (zh) * 2015-07-06 2018-11-20 张兆琦 一种面向多硬件平台的应用程序管理方法
CN105094919A (zh) * 2015-08-13 2015-11-25 海信集团有限公司 一种应用程序启动方法
CN105117265B (zh) * 2015-09-17 2019-02-15 珠海豹趣科技有限公司 一种文件升级的方法、装置和终端
CN105243141B (zh) * 2015-10-12 2019-08-16 上海斐讯数据通信技术有限公司 一种app资源管理方法及移动终端
CN105302604B (zh) * 2015-10-30 2018-10-23 北京奇虎科技有限公司 应用程序的版本更新方法及装置
CN105677428A (zh) * 2016-01-12 2016-06-15 北京小米移动软件有限公司 终端的升级方法、装置及终端
CN107193576A (zh) * 2016-03-15 2017-09-22 阿里巴巴集团控股有限公司 一种移动终端应用程序的更新方法和装置
CN107239295B (zh) * 2016-03-29 2020-12-25 腾讯科技(深圳)有限公司 一种软件升级的方法及软件升级装置
US10216510B2 (en) * 2016-06-04 2019-02-26 Airwatch Llc Silent upgrade of software with dependencies
CN106484471A (zh) * 2016-09-30 2017-03-08 宁波方太厨具有限公司 一种通讯模块内固化程序的加载方法
CN106445609A (zh) * 2016-09-30 2017-02-22 广东欧珀移动通信有限公司 应用程序的自动更新方法及移动终端
CN108008970A (zh) * 2016-10-27 2018-05-08 腾讯科技(深圳)有限公司 应用升级方法及装置
US10229404B1 (en) * 2016-12-16 2019-03-12 Worldpay, Llc Systems and methods for network configurations of pin pads
CN106886422A (zh) * 2017-04-07 2017-06-23 广州华多网络科技有限公司 软件升级方法及装置、电子设备
CN107147712B (zh) * 2017-05-05 2018-09-11 腾讯科技(深圳)有限公司 更新网络应用程序的方法及装置
CN107357613B (zh) * 2017-06-28 2020-09-04 广州酷狗计算机科技有限公司 应用更新方法、装置及计算机可读存储介质
CN107423096A (zh) * 2017-07-26 2017-12-01 郑州云海信息技术有限公司 一种实现软件安装的方法及装置
CN109582327A (zh) * 2017-09-29 2019-04-05 北京国双科技有限公司 更新方法及装置
CN108021427A (zh) * 2017-11-23 2018-05-11 国家电网公司 基于Docker的信息系统部署及升级管理方法
CN108459868A (zh) * 2018-03-29 2018-08-28 武汉斗鱼网络科技有限公司 一种软件启动方法、装置、终端和存储介质
CN108762800A (zh) * 2018-05-23 2018-11-06 北京五八信息技术有限公司 应用程序的动态更新方法和装置
US10868709B2 (en) 2018-09-10 2020-12-15 Oracle International Corporation Determining the health of other nodes in a same cluster based on physical link information
CN110045975A (zh) * 2019-05-05 2019-07-23 厦门天锐科技股份有限公司 一种软件升级方法
CN110515642B (zh) * 2019-09-02 2022-04-29 杭州行至云起科技有限公司 一种应用程序升级方法及系统
CN110609704B (zh) * 2019-09-19 2023-03-21 聚好看科技股份有限公司 服务程序版本的灰度调整方法、装置及系统
CN110659052B (zh) * 2019-09-30 2023-03-10 深圳市九洲电器有限公司 网络设备中系统软件的更新方法、系统及可读存储介质
CN110737454A (zh) * 2019-10-17 2020-01-31 腾讯科技(深圳)有限公司 软件项目更新方法、装置、计算机设备及存储介质
CN110764805B (zh) * 2019-10-28 2024-01-23 腾讯科技(深圳)有限公司 客户端无感升级的方法、装置、终端及存储介质
CN110806888A (zh) * 2019-12-23 2020-02-18 北京奇艺世纪科技有限公司 一种应用程序的升级方法、装置及电子设备
JP2021121896A (ja) * 2020-01-31 2021-08-26 キヤノン株式会社 情報処理装置及びプログラム
CN111736863A (zh) * 2020-05-22 2020-10-02 深圳市鸿合创新信息技术有限责任公司 一种软件升级方法、装置及电子设备
CN111782197B (zh) * 2020-08-03 2023-12-29 网易(杭州)网络有限公司 一种资源发布的方法及装置
CN113760306A (zh) * 2020-10-26 2021-12-07 北京京东乾石科技有限公司 安装软件的方法、装置、电子设备及存储介质
CN112947983B (zh) * 2021-04-15 2024-03-15 网易(杭州)网络有限公司 应用程序更新方法及装置、电子设备、存储介质
CN113238777B (zh) * 2021-05-20 2023-08-22 网易(杭州)网络有限公司 应用程序更新方法、装置、设备及存储介质
CN115129333B (zh) * 2022-09-02 2022-11-25 城云科技(中国)有限公司 适用于微前端框架的npm资源包管理方法、装置及系统
CN116069353B (zh) * 2022-11-30 2024-02-02 广州力麒智能科技有限公司 一种更新引导前置方法、装置、设备及存储介质
CN116009912B (zh) * 2022-12-26 2023-08-18 郑州云智信安安全技术有限公司 针对私网环境的自动生成升级包的构建方法
CN117555579A (zh) * 2024-01-11 2024-02-13 杭州实在智能科技有限公司 基于Pyinstaller平台的软件构建更新方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101859250A (zh) * 2009-04-07 2010-10-13 盛趣信息技术(上海)有限公司 网络游戏客户端系统
WO2010130734A1 (en) * 2009-05-13 2010-11-18 International Business Machines Corporation System and method for building and updating a runtime environment

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5732275A (en) * 1996-01-11 1998-03-24 Apple Computer, Inc. Method and apparatus for managing and automatically updating software programs
US6282709B1 (en) * 1997-11-12 2001-08-28 Philips Electronics North America Corporation Software update manager
US7779406B2 (en) * 1999-04-16 2010-08-17 Microsoft Corporation Method and system for managing lifecycles of deployed applications
US6912711B1 (en) * 2000-05-25 2005-06-28 International Business Machines Corporation Method of applying an update to a contained collection of program and data files based upon versions
US7814476B2 (en) * 2002-10-31 2010-10-12 Oracle America, Inc. Systems and methods for updating software
US7673297B1 (en) * 2003-09-03 2010-03-02 The Directv Group, Inc. Automatic software update detection and flexible installer for set-top boxes
US7313792B2 (en) * 2003-09-08 2007-12-25 Microsoft Corporation Method and system for servicing software
KR101075676B1 (ko) * 2004-11-20 2011-10-21 삼성전자주식회사 이동통신 단말기에 소프트웨어를 설치하는 장치 및 방법
US8245216B2 (en) * 2005-10-11 2012-08-14 Oracle International Corporation Patch management system
CN100451965C (zh) * 2005-12-07 2009-01-14 英业达股份有限公司 动态升级程序的方法
CN100442230C (zh) * 2006-08-04 2008-12-10 华为技术有限公司 软件多版本升级的方法及系统
US20120246630A1 (en) * 2011-03-23 2012-09-27 Secure By Design System and Method for Automating Installation and Updating of Third Party Software

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101859250A (zh) * 2009-04-07 2010-10-13 盛趣信息技术(上海)有限公司 网络游戏客户端系统
WO2010130734A1 (en) * 2009-05-13 2010-11-18 International Business Machines Corporation System and method for building and updating a runtime environment

Also Published As

Publication number Publication date
WO2013026332A1 (zh) 2013-02-28
US9606791B2 (en) 2017-03-28
CN102955702A (zh) 2013-03-06
US20140173578A1 (en) 2014-06-19

Similar Documents

Publication Publication Date Title
CN102955702B (zh) 一种软件安装及升级方法和装置
EP2786246B1 (en) Deployment and updating of applications and drivers on a client device using and extensible markup language (xml) configuration file
US7669201B2 (en) System and method for common file installation
EP2786248B1 (en) Automatic updating of an application or a driver on a client device using a deployment configuration file
EP2786279B1 (en) Deployment of a driver or an application on a client device having a write-filter
CN103229144B (zh) 预热软件安装
US8819670B2 (en) Automated software installation with interview
US20130139183A1 (en) Creation or installation of a disk image for a target device having one of a plurality of hardware platforms
US8935688B2 (en) Methods for facilitating updates at an information handling device
CN102622241A (zh) 一种软件升级方法及装置
EP2534578A2 (en) Extension mechanism
US20150067668A1 (en) Installation engine and package format
CN106874195A (zh) 一种针对android应用的bug修复和持续交付方案
WO2012139324A1 (zh) 一种处理业务应用的系统和方法
CN109032617B (zh) 一种自动删除安装包的控制方法及控制装置
US9678733B2 (en) Method, non-transitory computer-readable medium, and software providing system to distribute and install application program downloads to user terminal in distributed environment
JP2006260163A (ja) 再インストール支援方法,再インストール支援プログラム,インストール方法,インストールプログラムおよびコンピュータ装置
Salvador et al. Embedded Linux Development using Yocto Projects: Learn to leverage the power of Yocto Project to build efficient Linux-based products
CN117111987A (zh) 软件自动更新并自重启的方法、系统、设备及存储介质
CN104750511A (zh) 安装桌面应用程序的方法
WO2011087352A1 (en) A profiling remote management system and a method of profiling remote management

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