以分离的模块提供软件更新的系统及其方法技术方案

技术编号:6342456 阅读:198 留言:0更新日期:2012-04-11 18:40
一种以分离的模块提供软件更新的系统及其方法,其通过将更新程序分离为预更新模块以及核心模块后,当预更新模块判断出与核心模块对应的更新档案存在时,会先以更新档案更新核心模块,再加载更新后的核心模块,使核心模块更新软件所包含的目标档案的技术手段,可以让更新程序更新自身,并达成避免使用者需要手动更新更新程序的技术功效。

【技术实现步骤摘要】

一种软件更新的系统及其方法,特别是指一种。
技术介绍
软件是一系列按照特定顺序组织的计算机数据和指令的集合,其依据执行的主机的位置,可以分为执行在本地端的软件以及执行在远程的软件。软件在存在错误的程序、开发者开发出效率更好资源使用更少的相同程序、或是开发者欲增加软件的功能时,通常会需要进行更新。由于执行在本地端的软件是安装在客户端中,因此当软件需要更新时,只能依靠使用者手动更新或是由软件中的更新程序自动更新,因此,软件中的更新程序是很重要的。虽然以软件中的更新程序进行软件更新的更新方式对使用者而言是比较方便的。 不过,因为软件中需要被更新的档案通常会储存在开发厂商所提供的服务器上,因此再进行软件更新时,更新程序需要与开发厂商所提供的服务器配合。一旦服务器所执行的与更新程序搭配的服务程序因为被开发者更新等原因发生改变,则在执行在客户端中的更新软件往往需要同步更新;但是,这实际上是有困难的,因为软件的特性,当程序文件在执行中的时候,被执行的程序文件无法被修改,也就是说,更新程序无法对自己进行更新,要是服务器所执行的服务程序发生改变,这将使得更新程序无法进行软件更新,如此,使用者势必得要手动更新更新程序。综上所述,可知现有技术中长期以来一直存在软件的更新程序无法更新自身的问题,因此有必要提出改进的技术手段,来解决此一问题。
技术实现思路
有鉴于现有技术存在更新程序无法更新自身的问题,本专利技术遂提供一种,其中本专利技术所提供的以分离的模块提供软件更新的系统,至少包含核心模块以及预更新模块,核心模块用以更新软件所包含的目标档案;预更新模块,属于目标档案其中之一,其中更包含判断单元,用以判断与核心模块对应的更新档案是否存在;更新单元,用以于判断单元判断更新档案存在时,以更新档案更新核心模块;核心加载单元,用以加载核心模块。本专利技术所提供的以分离的模块提供软件更新的系统,其中,预更新模块更包含使用者接口,预更新模块更用以于使用者接口中显示互动信息;另外,预更新模块或核心模块更用以结束执行预更新模块。本专利技术所提供的以分离的模块提供软件更新的系统,其中,预更新模块更包含传输单元,用以联机至服务器,判断单元更用以通过传输单元判断服务器中是否储存更新档案,传输单元更用以至服务器下载更新档案。本专利技术所提供的以分离的模块提供软件更新的方法,其步骤至少包括分离更新程序为预更新模块及核心模块;预更新模块判断与核心模块对应的更新档案存在后,以更新档案更新核心模块;预更新模块加载更新后的核心模块;核心模块更新软件所包含的目标档案。本专利技术所提供的以分离的模块提供软件更新的方法,其中,于预更新模块判断与核心模块对应的更新档案存在前,更包含预更新模块显示使用者接口。另外,于核心模块更新目标档案前,更包含预更新模块或核心模块结束预更新模块的执行。本专利技术所提供的以分离的模块提供软件更新的方法,其中,预更新模块判断与核心模块对应的更新档案存在的步骤是预更新模块联机至服务器判断服务器中储存更新档案后,判断更新档案存在;核心模块更新软件所包含的目标档案的步骤更包含核心模块更新该预更新模块的步骤;预更新模块加载更新后的核心模块的步骤是预更新模块以动态链接库(Dynamic LinkingLibrary, DLL)技术或反射技术加载更新后的核心模块。本专利技术所提供的系统与方法如上,与现有技术之间的差异在于本专利技术通过将更新程序分离为核心模块以及预更新模块,当预更新模块判断对应核心模块的更新档案存在时,会先以更新档案更新核心模块,再加载更新后的核心模块,使核心模块更新软件所包含的目标档案,藉以解决现有技术所存在的问题,并可以达成避免使用者需要手动更新更新程序的技术功效。附图说明图1为本专利技术所提供的分离更新程序为两模块的示意图;图2为本专利技术所提供的以分离的模块提供软件更新的系统架构图;图3为本专利技术所提供的以分离的模块提供软件更新的方法流程图;图4A为本专利技术实施例所提供的使用动态链接库加载核心模块的程序代码示意图;图4B为本专利技术实施例所提供的使用反射技术加载核心模块的程序代码示意图;图5为本专利技术实施例所提供的使用者接口的示意图。主要组件符号说明200更新程序210核心模块220预更新模块221判断单元222更新单元223核心加载单元224传输单元225使用者接口401程序代码402程序代码521按键具体实施例方式以下将配合图式及实施例来详细说明本专利技术的特征与实施方式,内容足以使本领域技术人员能够轻易地充分理解本专利技术解决技术问题所应用的技术手段并据以实施,藉此实现本专利技术可达成的功效。本专利技术如「图1」所示,将软件的更新程序200由一个完整的模块再进一步分离为具有不同功能的两个模块,两个模块中的一个或两个模块包含更新另一个模块的功能。事实上,本专利技术并不将更新程序分离为两个模块为限,凡一个完整的更新程序可以分离为两个以上的模块,且其中的任一模块存在更新其它模块的功能时,即可以使用本专利技术。以下先以「图2」本专利技术所提供的以分离的模块提供软件更新的系统架构图来说明本专利技术的系统运作。如「图2」所示,本专利技术的系统含有核心模块210、以及预更新模块 220。核心模块210负责以公知的软件更新方式,如依靠使用者手动更新或是由软件中的更新程序自动更新等方式更新软件中的目标档案。被核心模块210更新的目标档案通常是包含在本专利技术的软件中,不属于更新程序200的其它程序,但本专利技术并不以此为限。在实务上,目标档案除了不包含核心模块210之外,也可以包含预更新模块220。值得一提的是,由于软件中不属于更新程序200的其它程序都是由核心模块210 进行更新,因此,核心模块210是更新程序200中最主要的部分。预更新模块220主要负责在加载核心模块210前,更新核心模块210。为了达到这样的功能,预更新模块220至少更包含判断单元221、更新单元222、以及核心加载单元223。判断单元221负责判断与核心模块210对应的更新档案是否存在。被判断单元 221判断存在与否的更新档案即为更新核心模块210的档案,值得一提的是,更新档案可以被储存于包含本专利技术的软件的执行环境(本地端)中,也可以被储存于远程的服务器中。当更新档案被储存于本地端时,判断单元221可以通过本地端的档案系统判断更新档案是否存在;而当更新档案被储存于服务器时,判断单元221可以通过传输单元2M联机至服务器判断更新档案是否存在。不论更新档案储存于软件的执行环境或是储存于远程的服务器中,判断单元221 更可以由组成核心模块210的各档案的更新日期是否较更新档案的更新日期更早来判断可以被用来更新核心模块210的更新档案是否存在,或是由预存于本地端特定储存位置的设定文件中所记录的核心模块210的版本编号是否较更新档案中所记录的版本编号为小来判断更新核心模块210的更新档案是否存在,甚至可以由本地端的特定的储存位置是否存在特定名称的档案(如文件名称即为前次更新的日期的档案)来判断更新档案是否存在,但判断单元221判断更新档案是否存在的方式并不以此为限。传输单元2M负责与储存更新档案的服务器联机,藉以于判断单元221判断更新档案存在后,至服务器中下载更新档案,使下载至服务器的更新档案被储存于本地端中的特定位置,例如专门用来存放更新档案的目录等,本文档来自技高网...

【技术保护点】
1.一种以分离的模块提供软件更新的方法,应用于一软件的一更新程序中,其特征在于,该方法至少包含下列步骤:分离该更新程序为一预更新模块及一核心模块;该预更新模块判断与该核心模块对应的一更新档案存在后,以该更新档案更新该核心模块;该预更新模块加载更新后的该核心模块;及该核心模块更新该软件所包含的至少一目标档案。

【技术特征摘要】

【专利技术属性】
技术研发人员:邱全成蔡敏捷
申请(专利权)人:英业达股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1