即时生成文件版本的方法

文档序号:6557756阅读:268来源:国知局
专利名称:即时生成文件版本的方法
技术领域
本发明涉及一种即时生成文件版本的方法。该方法是在用户编辑文件的过程中,计算机系统可自动备份该文件在不同时间所修改的内容,并以不同的版本文件储存起来,该计算机系统可依用户的需求,调用储存在储存装置中任一的版本文件。
按一般已知的使用情况,用户在定期修改文件后,想要保留以前每一版本的文件,而对同一文件的不同版本进行管理的具体作法,请参照

图1所示,该作法是将用户每次更改后的文件,分别以不同的文件名称保存下来,并存放在计算机系统的文件夹内,以便日后查询,当用户需要查询某一版本的文件时,再将该文件夹打开,取用所需的版本文件,然因这些不同版本文件,其生成过程完全必需依赖用户,以手动方式进行储存,如此一来,不但会增加用户在做此项工作时的工作量,且会占用较大的硬盘空间。
而现有的已知技术中,如Word中虽具有根据用户自行设定的时间间隔,而自动存档的功能,然,因该功能每次存储时,皆使用同一个档案名称(normal.dot),因此,用户无法对在最后存档结果前,所修改的文件进行调用和查询。
另外,如Norton Ghout虽可在每一设定时间内,将文件完全备份,以防止文件资料流失。但该系统仅会在用户所设定的时间进行备份的动作,而在该设定时间未到的时间,及该设定时间与下一设定时间之间,并不会动作。因此,仍会有漏失文件的情况发生。例如,用户设定每隔十分钟作备份的动作,则在设定时前十分钟(空窗期)内,如文件有任何修改,该计算机系统并不会进行任何处理。
鉴于上述传统的应用软件在使用时,所存在的一些缺陷,本发明提供一种即时文件版本生成方法。
本发明的一个目的是在提供一种即时文件版本生成方法。该方法主要令用户编辑某一文件的过程中,计算机系统可即时地将该文件在不同时间修改的内容,分别储存起来,而生成不同的版本文件。该计算机系统可根据用户的要求,随时调用不同的版本文件。
本发明的另一个目的是在提供一种即时文件版本生成方法,其计算机系统可根据用户的设定,自动删除所储存较旧的版本文件,而只储存新的版本文件,如此,即不会造成储存装置(如硬盘)的空间浪费。
本发明的再一个目的是在提供一种即时文件版本生成方法,该方法无须针对不同的软件,设计独立的模块,而以相同方式完成版本文件的生成,且将其储存在预定位置上,而具有通用性。
为了对本发明作更进一步的认识与了解,以实施举例配合附图进一步详细说明如下图1为已知技术功能示意图。
图2为本发明的结构示意图。
图3为本发明的主要流程图。
图4为本发明的拦截模块流程图。
图5为本发明的比较模块流程图。
图6为本发明的备份模块流程图。
图7为本发明具体实施例的数据表。
本发明的即时版本生成的方法主要是透过钩接函数(Hook)拦截用户在编辑文件时所写入文件的操作信息,并根据比较的结果,做出不同处理的方法。请参照图2所示,该方法主要是在用户编辑某一文件时,计算机系统会将该文件原先的内容保存下来(101),同时透过拦截模块中的钩接函数(Hook),将该文件修改过的内容拦截下来,并把拦截后的内容,保存在自定义函数单元中,以备调用(102)。
再将储存在自定义函数单元中的修改过的文件(以下简称新版本文件)与原先储存在计算机系统中的文件(以下简称旧版本文件)发送至比较模块进行比较,令该比较模块可从文件大小、文件保存日期,以及文件所包含数据的循环冗余校验值(CRC)等三个不同方向,分别去作比较(103),如果新旧版本文件比较的结果为不同,则将该新版本文件送至备份模块(104)中,予以备份,而生成新文件;如果新旧版本比较的结果相同,则以该文件原来的名称(File Name)储存起来(105)。
再者,以下就本发明的方法对用户信息接收及处理的过程,配合附图(请参照图3所示),详细说明如下首先,当用户在编辑文件时,计算机系统即会拦截该用户正在操作的文件(201),并等待接收该用户写入文件的操作信息(202),而该计算机系统在接收到该操作信息时,即会对该操作信息所写入的文件进行识别(203),判断该操作信息正在写入的文件,是否为该用户预先所指定的文件(204),如果判断结果,该操作信息正在写入的文件非用户所指定文件,则调用该计算机系统继续进行该文件的编辑(208)。
如果该文件为用户所指定的文件,则将该文件与该文件的先前版本内容进行比较(205),令该计算机系统可由两者的比较结果,判断两者的间是否有改变(206),如果有改变,该计算机系统即会将该文件加以备份,并储存在指定位置上,进而生成新版本文件(207);如果该文件与该文件先前的版本相比较没有变化,则调用该计算机系统继续该文件原有的编辑动作(208)。
至于,上述的拦截模块、比较模块及备份模块进行时的相关过程,则配合附图(请参照图4、5、6所示),进一步详细说明如下1.拦截模块流程请参照图4所示,首先,计算机系统会调用拦截模块中的钩接函数(例如IFSMgr-InstallHook()函数)(301);同时保存与该文件先前版本对应的函数地址(302);之后在该地址中嵌入自定义函数地址(303);同时判断该自定义函数地址是否嵌入成功(304);如果不成功,则显示操作失败消息(305),并结束处理程序如果成功,则等待该自定义函数被调用(306),使计算机系统调用该自定义函数,并调用该自定义函数作拦截处理时,该自定义函数即会对与其嵌接的函数地址中的文件,进行拦截处理(307)。
2.比较模块流程请参照图5所示,首先,该比较模块会将由拦截模块所拦截的文件(以下称新版本文件)大小,与该文件先前的版本的大小(以下称旧版本文件)作比较(401),并由比较结果判断是否有变化(402),如果有变化,则备份该正在操作的文件(即新版本文件),如此,即可获得该文件的最新版本(408);如果文件大小没有变化,则继续比较该新旧两个版本的文件日期(403),判断其是否有改变(404),如果有变化,则备份该正在操作的文件,并以该正在操作的文件当前操作日期为该最新版本文件的名称(408);如果新旧版本的文件日期仍然没有改变,则再比较两者的循环冗于校验值(Cycle Redundancy Check,简称CRC)(505),判断该值是否有变化(406),如果有变化,该计算机系统即备份该正在操作的文件(408),如果没有变化,该计算机系统即不作任何处理,并结束处理程序(407)。
3.备份模块流程请参照图6所示,首先,计算机系统会判断正在操作的文件内容是否有改变(501),如果没有变化,则结束相关的处理程序;如果有变化,则将处理当前所备份的文件档案总数,与用户所设定的最大数值做比较(502),该计算机系统可由比较结果,判断所保存的文件版本的档案总数,是否已超过该用户所设定的最大数值(503),如果超过设定的最大数值,则计算机系统会移除较旧的版本文件,只保留最新文件版本(504)后,再继续读取正在操作的文件(505),否则,计算机系统会直接读取正在操作的文件(505)后,并将该正在操作文件的当前操作时间(506)转换成字符串形式(507),创建一个新文件夹(508),再将该文件复制到新文件夹中(509),如此,计算机系统即可根据用户要求,进行定期作移除旧有版本档案的动作,而达到释放(free)储存装置(如硬盘)空间的目的。
为能更进一步了解本发明,以下举一实施例说明如下本发明的即时自动生成文件版本的方法是一种文件备份计算机系统,其主要在用户编辑文件过程时,可自动将每次所备份的文件,以不同的版本储存起来。具体方法是在备份文件的时候,以正在储存的文件的日期及时间为该文件的目录名,将不同时期需要备份的文件各别存放起来。
请参照图7所示,例如有一个文件分别于1999年8月26日420pm、1999年8月26日320pm和1999年8月27日830am三个不同的时间进行了修改,如果用户想要保留这三个版本文件,通常的作法是以手动输入不同的目录名称,将该三个文件以不同的文件名称储存起来。
而本发明仅需通过钩接函数(Hook)拦截用户正在操作的文件,并在拦截的同时,识别用户目前正本对文件进行写入的操作,比较写操作前后文件内容是否有变化,结果发现1999年8月26日420pm用户修改后的文件内容有变化,即读取当前储存文件的计算机计算机系统时间,将其转换成字符串,根据这些字符串创建一个新文件夹,该新建文件夹的名称设定为该字符串,并将当前版本的文件自动复制到名为8/26/99/420pm的文件夹内,而分别于1999年8月26日320pm和1999年8月27日830am修改的文件版本,则以前面相同的方法分别自动备份在8/26/99/320pm和8/27/99/830am的文件夹中,以便供用户日后查询。
再者,计算机系统更可根据用户的设定(于本实施例为10个),将文件夹中所储存的版本总数(于本实施例为12个)与其作比较,而将文件夹中所储存的前面10个版本加以删除,而保留最新的2个版本(如虚线框所示)。
综上所述,本发明的一种即时文件版本生成方法,不但可改良已知技术的各种缺点,且在使用上能增进功效,合于实用。
权利要求
1.一种即时文件版本生成方法,该方法利用计算机系统拦截用户正在操作的文件,而在接收到该操作信息时,对该操作信息所写入的文件进行辨别,判断该文件是否为该用户预先所指定文件;如果为用户所指定的文件,则将该文件与该文件的上一版本进行比较,使计算机系统可由两者的比较结果,判断两者的间是否有改变,如果有改变,则计算机系统即会将该文件加以备份,并储存在指定位置上,进而生成新版本文件,从而即时地将用户在不同时间修改的版本,分别储存备份起来。
2.如权利要求1所述的即时文件版本生成方法,其中计算机系统在判断该操作信息所写入的文件不是用户所指定文件时,则调用该计算机系统继续该文件原有的编辑动作。
3.如权利要求1所述的即时文件版本生成方法,其中该计算机可通过拦截模块在用户操作文件的同时进行拦截的动作。
4.如权利要求3所述的即时文件版本生成方法,其中该拦截模块进行拦截时,利用其中的钩接函数拦截正在操作的文件,并在该钩接函数拦截该文件时,保存与该文件先前版本对应的函数地址,并于该地址嵌入自定义函数;之后由计算机系统判断该自定义函数地址是否已嵌入成功,如果成功,则等待该自定义函数被调用;使计算机系统调用自定义函数,并在调用该自定义函数作拦截处理时,该自定义函数对与自定义函数嵌接的函数地址中的先前版本文件进行拦截处理。
5.如权利要求3所述的即时文件版本生成方法,其中该拦截模块在该自定义函数地址未能成功嵌入该文件先前版本对应的函数地址时,则显示操作失败的信息,并结束处理程序。
6.如权利要求1所述的即时文件版本生成方法,其中该计算机系统在拦截到用户正在操作的文件内容时,可通过比较模块,将该文件修改的内容与该文件先前版本的内容进行比较的处理。
7.如权利要求6所述的即时文件版本生成方法,其中该比较模块将由拦截模块所拦截的文件(以下称新版本文件),与先前的版本文件(以下称旧版本文件)作比较后,再由比较结果判断是否有变化,如果有变化,则备份该正在操作的文件(即新版本文件),这样即可获得该文件的最新版本。
8.如权利要求6所述的即时文件版本生成方法,其中该比较模块可由文件内容大小是否有变化来作为判断的依据。
9.如权利要求6所述的即时文件版本生成方法,其中该比较模块可由文件日期是否有改变来作为判断的依据。
10.如权利要求6所述的即时文件版本生成方法,其中该比较模块可由循环冗余校验值(Cycle Redundancy Check,简称CRC)是否有变化来作为判断的依据。
11.如权利要求6所述的即时文件版本生成方法,其中该比较模块在作比较时,如果正在操作文件没有任何变化,则计算机系统即不做任何处理,并结束操作。
12.如权利要求1所述的即时文件版本生成方法,其中该计算机系统在对该正在操作的文件与该文件的上一版本比较时,其比较结果为不同时,可通过备份模块备份该文件的内容。
13.如权利要求12所述的即时文件版本生成方法,其中该备份模块在进行时,判断该正在操作的文件内容是否有改变,如果有变化,则将当前的文件档案总数与用户所设定的最大数值作比较;该计算机系统可由比较结果,判断所保存的版本文件的档案总数是否已超过该用户所设定的最大数值;如果超过设定的最大数值,则计算机系统会移除较旧的版本文件,只保留最新的版本文件;之后继续读取正在操作的文件,并将该正在操作的文件操作当前计算机系统时间转换成字符串形式,创建一个新文件夹,再将该文件复制到新文件夹中;如此,计算机系统即可根据用户要求,定期进行移除旧有版本档案的动作,进而达到释放(Free)储存装置空间的目的。
14.如权利要求12所述的即时文件版本生成方法,其中该备份模块在进行时,该正在操作的文件内容如果没有变化,则结束相关的处理程序。
15.如权利要求12所述的即时文件版本生成方法,其中该备份模块在进行处理时,所备份的文件档案总数未超过用户所设定的最大数值时,计算机系统会直接读取正在操作的文件后,并将该正在操作文件的当前操作计算机系统时间转换成字符串形式,创建一个新文件夹,再将该文件复制到新文件夹中。
全文摘要
本发明涉及即时生成文件版本的方法。该方法利用计算机系统拦截用户正在操作的文件,将该文件与该文件的上一版本进行比较,判断两者的间是否有改变,如果有改变,则计算机系统即会将该文件加以备份,并储存在指定位置上,进而生成新版本文件,如此,即能即时地将用户在不同时间修改的版本,分别储存备份起来,而供用户随时调用,且该计算机系统更可根据用户预先的设定及要求,自动删除储存在储存装置中较旧的版本文件。
文档编号G06F17/21GK1326155SQ00108978
公开日2001年12月12日 申请日期2000年5月25日 优先权日2000年5月25日
发明者李鹏, 陈玄同, 林光信 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1