文件删除方法及系统的制作方法

文档序号:6363769阅读:197来源:国知局
专利名称:文件删除方法及系统的制作方法
技术领域
本申请涉及计算机数据处理技术领域,特别是涉及一种文件删除方法及系统。
背景技术
用户在管理电脑里的文件时,通常需要删除磁盘中的文件。一般用户的删除操作都是通过操作系统自身的删除功能来实现。但是,并不是每一个用户都熟悉操作系统中的各个文件,也不知道有些文件的用途,因此用户在手动删除文件时如果不求助于专业人员,便很容易出现误删。例如,系统文件或者是特殊的目录名等不应该被删除的文件,如果被删除了,则可能造成系统的不稳定或者产生其他不良影响。

发明内容
本申请提供一种文件删除方法及系统,能够解决操作系统中文件被误删的问题。为了解决上述问题,本申请公开了一种文件删除方法,包括以下步骤拦截操作系统对实现文件删除的原有函数的调用;从所述拦截的调用中获取待删除的目标文件的文件特征,并判断所述文件特征是否在预存的不可删除文件特征范围内,若是,则中止所述调用,并给出提醒信息,反之,则进行下一步骤;放行所述被拦截的操作系统对实现文件删除的原有函数的调用。进一步地,所述文件特征为所述目标文件的文件路径,所述判断所述文件特征是否在预存的不可删除文件特征范围内包括将所述文件路径与预存的不可删除文件路径进行匹配,若能匹配上,则所述文件特征在预存的不可删除文件特征范围内,反之,则所述文件特征不在预存的不可删除文件特征范围内。进一步地,所述文件特征为所述目标文件的MD5值,所述判断所述文件特征是否在预存的不可删除文件特征范围内包括将所述MD5值与预存的不可删除文件的MD5值进行比较,若相同,则所述文件特征在预存的不可删除文件特征范围内,反之,则所述文件特征不在预存的不可删除文件特征范围内。进一步地,所述拦截操作系统对实现文件删除的原有函数的调用采用如下方式实现拦截操作系统的文件进程。进一步地,所述拦截操作系统对实现文件删除的原有函数的调用包括将操作系统中实现文件删除的原有函数地址重定向至拦截函数地址。进一步地,放行所述被拦截的操作系统对实现文件删除的原有函数的调用包括采用拦截函数继续调用操作系统中实现文件删除的原有函数。
进一步地,所述方法还包括从云服务器端读取预存的不可删除文件特征。进一步地,所述方法还包括接收操作系统返回的操作结果,若删除失败,则返回处理方案。进一步地,所述处理方案包括以下一种或几种提醒信息、用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。进一步地,在返回处理方案之前还包括判断待删除的目标文件的文件类型,若为系统文件,则给出提醒信息;若为其他文件,则给出如下一种或几种处理方案用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。为了解决上述问题,本申请还公开了一种文件删除系统,包括拦截模块,用于拦截操作系统对实现文件删除的原有函数的调用;判断模块,用于从所述拦截的调用中获取待删除的目标文件的文件特征,并判断所述文件特征是否在预存的不可删除文件特征范围内,并根据判断结果进行后续操作;放行模块,用于放行所述被拦截的操作系统对实现文件删除的原有函数的调用。进一步地,所述判断模块包括文件路径获取单元,用于获取所述目标文件的文件路径;文件路径匹配单元,用于将所述文件路径与预存的不可删除文件路径进行匹配。进一步地,所述判断模块包括文件路径MD5值获取单元,用于获取所述目标文件的MD5值;MD5值比较单元,用于将所述MD5值与预存的不可删除文件的MD5值进行比较。进一步地,所述拦截模块包括文件进行拦截单元,用于拦截操作系统的文件进程。进一步地,所述拦截模块包括重定向单元,用于将操作系统中实现文件删除的原有函数地址重定向至拦截函数地址。进一步地,所述放行模块包括调用单元,用于采用拦截函数继续调用操作系统中实现文件删除的原有函数。进一步地,所述系统还包括不可删除文件特征读取模块,用于从云服务器中读取所述不可删除文件特征。进一步地,所述系统还包括结果处理模块,用于接收操作系统返回的操作结果,若删除失败,则返回处理方案。进一步地,所述结果处理模块包括处理方案确定单元,用于给出处理方案,所述处理方案包括以下一种或几种提醒信息、用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。进一步地,所述结果处理模块还包括文件类型判断单元,用于判断待删除的目标文件的文件类型;处理方案选取单元,若待删除的目标文件为系统文件,则给出提醒信息;若为其他文件,则给出如下一种或几种处理方案用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。与现有技术相比,本申请包括以下优点本申请的文件删除方法和系统通过增加拦截模块来拦截操作系统调用实现文件删除的原有函数的方式,使操作系统自动的调用新增的拦截函数。拦截函数可以根据预先设定的数据库来判断本次删除的目标文件是否属于可删除的文件,对于可删除的调用进行放行。因为增加了专业的数据库来进行比较,可以避免因为用户的不懂或者误操作而删除不应当删除的文件。在操作系统执行删除操作后,对删除结果进行进一步地跟踪,对于没有成功删除的文件给出进一步地专业的处理方案,从而能够给出更为准确的文件删除指导,同时可以避免因为错误操作而造成的系统不稳定等情况的出现。当然,实施本申请的任一方案不一定需要同时达到以上所述的所有优点。


图I是本申请的文件删除方法实施例一的流程图;图2是本申请的文件删除方法实施例二的流程图;图3是本申请的文件删除系统实施例一的结构示意图;图4是本申请的文件删除系统实施例二的结构示意图。
具体实施例方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本申请作进一步详细的说明。操作系统中的文件删除,特别是不熟悉、不常用的文件删除对于普通用户而言并不是一件容易的事,很多用户往往会在无意中删除系统文件而使系统出现问题。又或者,很多用户还会碰到需要删除的文件并无法成功删除的情况。如果能对普通用户的文件删除操作给出指导性意见,可以很好的保证系统文件不被误删,同时能够满足用户删除文件的需求显得尤为重要。但是,删除文件又是用户日常操作中进场会进行的一个操作,如果因为需要给出专业性的指导而使用户操作变得复杂,这明显无法满足用户需求。因此,如何在不改变用户习惯或者不增加操作复杂度的前提下对用户进行指导显得尤为重要。本申请通过在操作系统中设置文件删除装置来辅助进行文件删除操作,主要是通过重新设定一个新的函数,拦截操作系统对原有函数的调用,将操作系统对原有函数的调用重定向至新的函数的方式来获取文件路径,并基于预存数据库进行判断,然后给出提醒或者指导信息。对于用户而言,其删除操作无需发生任何改变,只是在点击删除之后会接收到对应的反馈,并根据反馈来进行相应操作,从而保证删除操作的准确性和有效性。参照图1,示出本申请的一种文件删除方法实施例一,包括以下步骤步骤101,拦截操作系统对实现文件删除的原有函数的调用。用户在进行文件删除时,会将删除目标文件的删除请求发送给操作系统,操作系统则会调用对应函数来进行删除操作。拦截的方式有多种,可以通过拦截操作系统的文件操作进程等方式来实现对删除请求的拦截,也可以通过文件过滤驱动来拦截。例如对函数地址进行重定向,即,将内存中操作系统实现删除操作的原有函数地址指向本申请提供的拦截函数地址。以Windows操作系统为例,Windows操作系统在删除文件时调用的系统原有函数为SHFileOperation,本申请的文件删除装置中的拦截函数为MySHFileOperation,通过将原有函数SHFileOperation的地址指向函数MySHFileOperation即可实现删除请求的拦截。步骤102,从所述拦截的调用中获取待删除的目标文件的文件特征,并判断所述文件特征是否在预存的不可删除文件特征范围内,若是,则中止所述调用,并给出提醒信息, 反之,则进行步骤103。用户向操作系统发送删除请求中会包含文件特征,以便于操作系统根据请求来选取需要调用的函数,实现对应的操作。在拦截操作系统发送的函数调用后,文件删除装置可以自动读取其中的文件特征。不可删除文件特征为预先设定以及统计,并存储在一个文件中,,或者以列表等其他方式进行存储,或者存储在服务器端,当进行比较时,可以直接从文件中会列表中读取, 或者从服务器端获取实时更新后的文件特征,从而进行比较。可以理解,通过从云端服务器获取的不可删除文件特征更具有时效性。 不可删除文件特征可以包括任何可以唯一识别一个文件的特征,例如文件路径、 MD5值等等。以文件路径为例,不可删除文件路径为预先设定好。其中,设定不可删除文件路径根据操作系统中各种文件的存放规则来设定。例如,关键的系统文件为不可删除的文件, Windows目录,Windows所在盘(一般是C盘)根目录下的boot. ini,ntldr,bootmgr等,这些文件删除后,会导致系统启动错误。另外,由于用户Windows可能安装在其它盘,优选地, 预置的不可删除文件路径不包括盘符,在用户环境需要转换后使用。例如,预置的不可删除文件路径是Windows,如果用户的Windows安装在D盘,实际使用的路径是D: \Windows。当获取到目标文件的文件路径后,与预存的不可删除文件路径进行比较,这里可以按照忽略大小写的全路径比较。例如,C:\NTLDR和c:\ntldr是相同的,但c:\windows\ ntldr和c:\ntldr不同,如果文件路径相同,则说明目标文件属于不可删除文件,此时则需要中止对操作系统中实现文件删除的原有函数的调用,并将相应的提醒信息返回给用户。 反之,则说明目标文件属于可删除文件,此时,则可以继续进行删除操作。当文件特征为MD5值时,则可以将待删除的目标文件的MD5值与预存的进行比较, 若相同,则说明目标文件属于不可删除文件,反之,则说明目标文件属于可删除文件。同样,当文件特征为其他特征时,也可以采用前述类似的方法进行判断,本申请对此不再赘述。步骤103,放行所述被拦截的调用。具体的放行过程为调用操作系统实现删除操作的原有函数来对待删除的目标文件进行删除。优选地,在进行拦截的过程中,在重定向函数地址的同时保留原有函数地址,当放行时,则可以直接通过保留的原函数地址进行原有函数的调用。参照图2,示出本申请的文件删除方法实施例二,在实施例一的基础上还包括以下步骤
步骤201,接收操作系统返回的操作结果,若删除失败,则返回处理方案。其中,处理方案包括提醒信息、调用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件等等。操作系统实现删除操作的函数会将操作结果返回给用户,通过对操作结果进行拦截,若删除失败,则提供其他可以实现文件删除的工具给用户(例如,文件粉碎机等等),从而便于用户进行后续删除。优选地,在返回处理方案给用户之前还包括判断待删除的目标文件的文件类型, 并根据文件类型来选取对应的处理方案。具体包括若文件是系统文件,则给出提醒信息, 若是其他文件,则用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件等等。 其中,文件是否属于系统文件也可以基于文件路径来判断。参照图3,示出本申请的一种文件删除系统实施例一,包括拦截模块10、判断模块 20和放行模块30。拦截模块10,用于拦截操作系统对实现文件删除的原有函数的调用。优选地,拦截模块10包括文件进行拦截单元,用于拦截操作系统的文件进程。具体的,拦截模块10包括重定向单元,用于将操作系统中实现文件删除的原有函数地址重定向至拦截函数地址。判断模块20,从所述拦截的调用中获取待删除的目标文件的文件特征,并判断所述文件特征是否在预存的不可删除文件特征范围内,,并根据判断结果进行后续操作。具体包括,若文件路径在预存的不可删除文件路径范围内,则中止调用,并给出提醒信息,反之, 则将结果发送给放行模块30。其中,文件特征包括文件路径、MD5值等等。放行模块30,用于放行所述被拦截的操作系统对实现文件删除的原有函数的调用。优选地,放行模块30包括调用单元,用于采用拦截函数继续调用操作系统中实现文件删除的原有函数。参照图4,示出本申请的文件删除系统实施例二,在实施例一的基础上还包括结果处理模块40,用于接收操作系统返回的操作结果,若删除失败,则返回处理方案。优选地,结果处理模块40包括处理方案确定单元,用于给出以下一种或几种处理方案提醒信息、用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。优选地结果处理模块40还包括文件类型判断单元和处理方案选取单元。文件类型判断单元,用于判断待删除的目标文件的文件类型。处理方案选取单元,若待删除的目标文件为系统文件,则给出提醒信息;若为其他文件,则给出如下一种或几种处理方案用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。下面,结合具体的以文件路径为特征的实例对前述方法进行详细的说明。以C:\ pagefile. sys这个文件为例,这是Windows虚拟内存的物理文件,通常在IG以上,有的用户觉得占空间,就想删除。在explorer, exe启动时,预设的文件删除装置即会将操作系统原有函数HFileOperation的地址重定向,替换为新函数MySHFileOperation的地址。当用户通过如资源管理器删除该文件时(选中文件按删除键或右键菜单直接删除),explorer, exe (资源管理器进程)会调用SHFileOperation函数,但是因为对该函数地址进行了重定向,因此实际调用的是MySHFileOperation函数。MySHFi I eOperat ion函数则会结合预存的不可删除文件路径来判断该文件路径 C:\pagefile. sys是否为系统文件。具体的判断过程为,从获取的文件路径中取出除去盘符的那一部分路径,即pagefile. sys,并与预置的系统文件名列表中的文件名进行匹配,若能匹配,即有pagefile. sys。预设的文件删除装置则会根据文件放置情况来确定系统盘。若确定用户系统盘为c盘,那么会将c盘的盘符c: \加在匹配的文件名上,即得到c: \pagefile. sys。此时再将查询得到的加上盘符的完整路径与获取到的完整路径进行比较,确定路径相同,则提示用户这是系统文件,不应该删除。如果用户删除的是c: \pagefile. exe,此时,若从预置的系统文件名列表中查询不到匹配的路径,则MySHFileOperation函数会继续调用原来的SHFileOperation函数,并接收SHFileOperation函数返回的结果。如果SHFileOperation返回成功,提示删除成功,或者不做任何提示;如果失败, 就可以提示用户使用粉碎机类的删除工具。本申请的文件删除方法及系统通过增加拦截模块来拦截操作系统调用实现文件删除的原有函数的方式,使操作系统自动的调用新增的拦截函数。拦截函数可以根据预先设定的数据库来判断本次删除的目标文件是否属于可删除的文件,对于可删除的调用进行放行。因为增加了专业的数据库来进行比较,可以避免因为用户的不懂或者误操作而删除不应当删除的文件。在操作系统执行删除操作后,对删除结果进行进一步地跟踪,对于没有成功删除的文件给出进一步地专业的处理方案,从而能够给出更为准确的文件删除指导,同时可以避免因为错误操作而造成的系统不稳定等情况的出现。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上对本申请所提供的文件删除方法及系统进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
权利要求
1.一种文件删除方法,其特征在于,包括以下步骤拦截操作系统对实现文件删除的原有函数的调用;从所述拦截的调用中获取待删除的目标文件的文件特征,并判断所述文件特征是否在预存的不可删除文件特征范围内,若是,则中止所述调用,并给出提醒信息,反之,则进行下一步骤;放行所述被拦截的操作系统对实现文件删除的原有函数的调用。
2.如权利要求I所述的文件删除方法,其特征在于,所述文件特征为所述目标文件的文件路径,所述判断所述文件特征是否在预存的不可删除文件特征范围内包括将所述文件路径与预存的不可删除文件路径进行匹配,若能匹配上,则所述文件特征在预存的不可删除文件特征范围内,反之,则所述文件特征不在预存的不可删除文件特征范围内。
3.如权利要求I所述的文件删除方法,其特征在于,所述文件特征为所述目标文件的 MD5值,所述判断所述文件特征是否在预存的不可删除文件特征范围内包括将所述MD5值与预存的不可删除文件的MD5值进行比较,若相同,则所述文件特征在预存的不可删除文件特征范围内,反之,则所述文件特征不在预存的不可删除文件特征范围内。
4.如权利要求I所述的文件删除方法,其特征在于,所述拦截操作系统对实现文件删除的原有函数的调用采用如下方式实现拦截操作系统的文件进程。
5.如权利要求I所述的文件删除方法,其特征在于,所述拦截操作系统对实现文件删除的原有函数的调用包括将操作系统中实现文件删除的原有函数地址重定向至拦截函数地址。
6.如权利要求5所述的文件删除方法,其特征在于,放行所述被拦截的操作系统对实现文件删除的原有函数的调用包括采用拦截函数继续调用操作系统中实现文件删除的原有函数。
7.如权利要求I所述的文件删除方法,其特征在于,所述方法还包括从云服务器端读取预存的不可删除文件特征。
8.如权利要求I至7任一项所述的文件删除方法,其特征在于,所述方法还包括接收操作系统返回的操作结果,若删除失败,则返回处理方案。
9.如权利要求8所述的文件删除方法,其特征在于,所述处理方案包括以下一种或几种提醒信息、用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。
10.如权利要求9所述的文件删除方法,其特征在于,在返回处理方案之前还包括判断待删除的目标文件的文件类型,若为系统文件,则给出提醒信息;若为其他文件,则给出如下一种或几种处理方案用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。
11.一种文件删除系统,其特征在于,包括拦截模块,用于拦截操作系统对实现文件删除的原有函数的调用;判断模块,用于从所述拦截的调用中获取待删除的目标文件的文件特征,并判断所述文件特征是否在预存的不可删除文件特征范围内,并根据判断结果进行后续操作;放行模块,用于放行所述被拦截的操作系统对实现文件删除的原有函数的调用。
12.如权利要求11所述的文件删除系统,其特征在于,所述判断模块包括文件路径获取单元,用于获取所述目标文件的文件路径;文件路径匹配单元,用于将所述文件路径与预存的不可删除文件路径进行匹配。
13.如权利要求11所述的文件删除系统,其特征在于,所述判断模块包括文件路径MD5值获取单元,用于获取所述目标文件的MD5值;MD5值比较单元,用于将所述MD5值与预存的不可删除文件的MD5值进行比较。
14.如权利要求11所述的文件删除系统,其特征在于,所述拦截模块包括文件进行拦截单元,用于拦截操作系统的文件进程。
15.如权利要求11所述的文件删除系统,其特征在于,所述拦截模块包括重定向单元,用于将操作系统中实现文件删除的原有函数地址重定向至拦截函数地址。
16.如权利要15所述的文件删除系统,其特征在于,所述放行模块包括调用单元,用于采用拦截函数继续调用操作系统中实现文件删除的原有函数。
17.如权利要求11所述的文件删除系统,其特征在于,所述系统还包括不可删除文件特征读取模块,用于从云服务器中读取所述不可删除文件特征。
18.如权利要求11至17任一项所述的文件删除系统,其特征在于,所述系统还包括 结果处理模块,用于接收操作系统返回的操作结果,若删除失败,则返回处理方案。
19.如权利要求18所述的文件删除系统,其特征在于,所述结果处理模块包括处理方案确定单元,用于给出处理方案,所述处理方案包括以下一种或几种提醒信息、用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。
20.如权利要求19所述的文件删除系统,其特征在于,所述结果处理模块还包括文件类型判断单元,用于判断待删除的目标文件的文件类型;处理方案选取单元,若待删除的目标文件为系统文件,则给出提醒信息;若为其他文件,则给出如下一种或几种处理方案用其他工具来删除所述目标文件、关闭正在使用文件或者粉碎文件。
全文摘要
本申请提供了一种文件删除方法,包括以下步骤拦截操作系统对实现文件删除的原有函数的调用;从所述拦截的调用中获取待删除的目标文件的文件特征,并判断所述文件特征是否在预存的不可删除文件特征范围内,若是,则中止所述调用,并给出提醒信息,反之,则进行下一步骤;放行所述被拦截的操作系统对实现文件删除的原有函数的调用。本申请还提供了一种文件删除系统。本申请的文件删除方法及系统,能够在用户删除文件时给出对应的提示,避免操作系统中文件被误删。
文档编号G06F17/30GK102609495SQ20121002044
公开日2012年7月25日 申请日期2012年1月29日 优先权日2012年1月29日
发明者谢重阳, 邹贵强 申请人:奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1