搬移软件的方法及装置的制作方法

文档序号:6600428阅读:216来源:国知局
专利名称:搬移软件的方法及装置的制作方法
技术领域
本发明涉及计算机领域,特别涉及一种搬移软件的方法及装置。
背景技术
随着计算机及互联网技术的发展,计算机在人们的工作、生活中的作用越来越重要,各种功能的软件也越来越多。在安装软件时,大多数软件的安装路径被默认为系统磁盘,而很多用户在安装软件程序的过程中,又时常忽略修改默认路径,致使大多数软件通常安装在系统磁盘中,导致计算机系统磁盘的可用空间越来越小。在解决计算机系统磁盘的可用空间越来越小的问题时,现有技术提供了一种云端软件平台,该云端软件平台通过在使用时加载驱动,并在软件与操作系统之间建立虚拟平台,使软件虚拟化,从而可以降低软件占用的磁盘空间。在实现本发明的过程中,发明人发现现有技术至少存在以下缺点由于现有技术提供的云端软件平台需要在软件与操作系统之间建立虚拟平台,因而将会影响软件和系统的运行效率,且又由于加载驱动会存在一定的安全隐患,导致将对系统带来一定的安全风险。

发明内容
为了在保证数据不丢失,并且不影响软件性能的前提下,提供一种安全、高效地提高磁盘可用空间的方式,本发明实施例提供了一种搬移软件的方法及装置。所述技术方案如下—方面,提供了一种搬移软件的方法,所述方法包括确定待搬移软件的软件信息,所述软件信息至少包括所述待搬移软件对应的原文件夹信息;根据所述待搬移软件的软件信息判断所述待搬移软件是否满足搬移条件;如果是,则将所述待搬移软件对应的原文件夹中的文件拷贝到搬移的目标文件夹,并删除所述原文件夹,在所述原文件夹所在位置建立指向所述目标文件夹所在路径的链接文件。其中,所述确定待搬移软件的软件信息之前,还包括获取搬移软件的指示,根据所述指示确定待搬移软件。所述确定所述待搬移软件的软件信息,具体包括在注册表中检测并确定所述待搬移软件的软件信息;或者,建立包含软件信息的软件特征库,在所述软件特征库中检测并确定所述待搬移软件的软件信息。所述根据所述待搬移软件的软件信息判断所述待搬移软件是否满足搬移条件,具体包括获取限制软件搬移的过滤名单,如果所述待搬移软件的软件信息与所述过滤名单中的过滤条件相匹配,则判断所述待搬移软件不满足搬移条件,否则,判断所述待搬移软件满足搬移条件;其中,所述过滤名单中的过滤条件至少包括需过滤的软件路径、软件名称和注册表键值中的一种。优选地,所述根据所述待搬移软件的软件信息判断所述待搬移软件是否满足搬移条件之后,还包括如果判断所述待搬移软件符合搬移条件,则在搬移所述待搬移软件的过程中记录搬移信息,并根据所述搬移信息对所述待搬移软件进行管理。优选地,所述在所述原文件夹所在位置建立指向所述目标文件夹所在路径的链接文件之后,还包括对所述链接文件及所述目标文件夹标识提示信息。另一方面,还提供了一种搬移软件的装置,所述装置包括确定模块,用于确定待搬移软件的软件信息,所述软件信息至少包括所述待搬移软件对应的原文件夹信息;判断模块,用于根据所述确定模块确定的所述待搬移软件的软件信息判断所述待搬移软件是否满足搬移条件;搬移模块,用于在所述判断模块判断出所述待搬移软件符合搬移条件之后,将所述待搬移软件对应的原文件夹中的文件拷贝到搬移的目标文件夹,并删除所述原文件夹, 在所述原文件夹所在位置建立指向所述目标文件夹所在路径的链接文件。其中,所述确定模块在确定待搬移软件的软件信息之前,还用于获取搬移软件的指示,根据所述指示确定待搬移软件。具体地,所述确定模块在确定待搬移软件的软件信息时,具体用于在注册表中检测并确定所述待搬移软件的软件信息;或者,建立包含软件信息的软件特征库,在所述软件特征库中检测并确定所述待搬移软件的软件信息。所述判断模块,具体用于获取限制软件搬移的过滤名单,如果所述确定模块确定的所述待搬移软件的软件信息与所述过滤名单中的过滤条件相匹配,则判断所述待搬移软件不满足搬移条件,否则,判断所述待搬移软件满足搬移条件。优选地,所述装置,还包括记录管理模块,用于在所述判断模块判断出所述待搬移软件符合搬移条件时,在搬移所述待搬移软件的过程中记录搬移信息,并根据所述搬移信息对所述待搬移软件进行管理。优选地,所述装置,还包括标识模块,用于对所述链接文件及所述目标文件夹标识提示信息。本发明实施例提供的技术方案的有益效果是通过将待搬移软件对应的文件拷贝到搬移的目标文件夹,可以保证数据不丢失, 并通过在删除原文件夹之后,在原文件夹所在位置建立指向目标文件夹所在路径的链接文件,可以保证在搬移前位置仍可以访问该软件,因而不影响软件性能,且由于该方案无需加载驱动,从而可以避免因加载驱动带来的安全风险,具有安全、高效地提高磁盘可用空间的效果。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例一提供的搬移软件的方法流程图;图2是本发明实施例二提供的搬移软件的方法流程图;图3是本发明实施例三提供的搬移软件的装置结构示意图;图4是本发明实施例三提供的另一种搬移软件的装置结构示意图;图5是本发明实施例三提供的又一种搬移软件的装置结构示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。实施例一参见图1,本实施例提供了一种搬移软件的方法,方法流程具体如下101 确定待搬移软件的软件信息,软件信息至少包括该待搬移软件对应的原文件
夹信息;102 根据该待搬移软件的软件信息判断该待搬移软件是否满足搬移条件,如果是,则执行步骤103,否则,流程结束;103 将该待搬移软件对应的原文件夹中的文件拷贝到搬移的目标文件夹,并删除该原文件夹中的文件,在该原文件夹所在位置建立指向目标文件夹所在路径的链接文件。本实施例提供的方法,通过将待搬移软件对应的文件拷贝到搬移的目标文件夹, 可以保证软件数据不丢失,并通过在删除原文件夹之后,在原文件夹所在位置建立指向目标文件夹所在路径的链接文件,可以保证在搬移前位置仍然可以访问该软件,因而不影响软件性能,且由于该方案无需加载驱动,从而可以避免因加载驱动带来的安全风险,具有安全、高效地提高磁盘分区可用空间的效果。实施例二针对安装软件致使系统磁盘可用空间越来越小的问题,本实施例提供了一种搬移软件的方法,该方法不仅可以通过将系统磁盘上的可搬移软件搬移到其他磁盘上,释放系统磁盘空间,从而提高系统磁盘的可用空间;且由于在搬移软件之前,需要对待搬移软件是否满足搬移条件进行判断,因此,还可以在不影响软件性能的前提下,满足用户搬移任意软件的需求。参见图2,方法流程具体如下201 确定待搬移软件的软件信息,软件信息至少包括该待搬移软件对应的原文件
夹信息;其中,待搬移软件对应的原文件夹信息包括但不限于原文件夹名称、原文件夹的路径等信息,本实施例不对具体的原文件夹信息进行限定,同样不对具体的待搬移软件进行限定,实际应用中,可由用户选择确定。为了保证更多的软件能够搬移,从而为用户选择待搬移软件提供便利,可以预先检测出计算机中安装的所有软件,并以列表的形式显示给用户,供用户从中选择待搬移软件。具体实现时,可为用户提供搬移软件的操作窗口,由用户选择确定待搬移软件。当用户选择待搬移软件之后,也就意味着给出了搬移软件的指示, 在获取到搬移软件的指示,并根据该指示确定待搬移软件之后,即可触发确定待搬移软件的软件信息以及后续的搬移步骤。本实施例不对确定待搬移软件的软件信息的方式进行限定,具体实现时,包括但不限于以下两种方式一、在注册表中检测并确定待搬移软件的软件信息;针对该种方式,由于注册表中存储了系统和软件应用程序的设置信息,因此,可通过注册表检测到待搬移软件的安装路径,并根据安装路径确定待搬移软件的根目录及对应的原文件夹等信息。二、建立包含软件信息的软件特征库,在该软件特征库中检测并确定待搬移软件的软件信息。针对该种方式,在建立软件特征库时,本实施例不对获取库中软件信息的方式进行具体限定。实际应用时,软件特征库中包含的软件信息除了可以通过在注册表中进行检测得到,对于在注册表中检测不到的信息,还可以采用配合服务器检测,同时对开始程序菜单,桌面程序等区域进行检测的方式。除此之外,对于采用在注册表中检测,并配合服务器检测的方式,仍然检测不出的一类信息,还可以通过设置高级操作选项的方式,由用户选择并完成该类信息的填充。202 根据待搬移软件的软件信息判断待搬移软件是否满足搬移条件,如果是,执行步骤203,否则,流程结束;具体地,根据待搬移软件的软件信息判断待搬移软件是否满足搬移条件时,具体包括获取限制软件搬移的过滤名单,如果待搬移软件的软件信息与过滤名单中的过滤条件相匹配,则判断该待搬移软件不满足搬移条件,否则,判断该待搬移软件满足搬移条件。其中,限制软件搬移的过滤名单可以从服务器上获取,本实施例不对获取过滤名单的方式以及该过滤名单中的具体过滤条件进行限定,过滤条件可以为一至多个,在判断待搬移软件是否满足搬移条件时,待搬移软件的软件信息满足其中的一条或者多条过滤条件,都将判断该待搬移软件不满足搬移条件。另外,本实施例不对过滤名单的具体格式及内容进行限定,例如,获取到的过滤名单的格式及内容可通过以下一段程序表示< ? xml version = “1. 0” encoding = "utf-8" >〈Blacklist〉〈BlackNode Id = "1 ” Type = “ 1 ” Relation = “ 1,,><Path Dynameic = " 1" > % Sys temRoot% </Path><KeyNameX/KeyName><D i sp1ayName > </D i sp1ayName ></BlackNode>〈/Blacklist〉
7CN 102214119 A
说明书
5/7页 从上述过滤名单的内容中可以看出该过滤名单中有3个过滤条件I^tKKeyName 和Display,其中,Path表示需要过滤的路径,支持环境变量的定义;KeyName表示注册表中 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ffindows\CurrentVersion\Uninstall 中的键值;DisplayName表示软件的名称,该名称支持模糊匹配,因而可与软件的原文件夹名称相对应。以安装在系统目录% system% system32中的软件为待搬移软件为例,由于上述限制软件搬移的过滤名单中的I^ath条件限定了路径% SystemRoot^,则应该判断该待搬移软件不满足搬移条件。由于对待搬移软件是否满足搬移条件进行了判断,因而可以对一些不能搬移的软件起到过滤的作用,避免了出现软件搬移不完全的情况,即可保证软件搬移的完全和完备性,其中,软件的完备性是指软件正常运行所需要的一切资源都存在,且按照软件自身认为的方式存在,即软件可以找到自身的注册表信息、运行所依赖的库文件、自身所需要的加载资源文件、可获取的数据文件等。203 将该待搬移软件对应的原文件夹中的文件拷贝到搬移的目标文件夹,并删除该原文件夹,在该原文件夹所在位置建立指向目标文件夹所在路径的链接文件;其中,本实施例不对搬移的目标文件夹进行具体限定,实际应用过程中,可由用户进行选择,例如,待搬移软件对应的原文件夹在C磁盘,用户可以选择将目标文件夹设置在 D磁盘或E磁盘,即选择将待搬移软件搬移到D磁盘或E磁盘。通过该步骤,由于在被删除的原文件夹位置上建立了链接文件,因此,表面上软件对应的原文件夹仍然存在,并且操作系统中任何对该原文件夹的操作都会通过链接文件自动重定向到目标文件夹所在的路径。也就是说,在对软件进行操作时,对原文件夹位置的链接文件的任何操作都会对目标文件夹产生相应的影响,因而可以使对链接文件及目标文件夹的操作实现同步。例如,对于软件的卸载,特别是通过在注册表中删除该软件的注册信息的自动卸载方式,卸载程序在将原文件夹位置的链接文件进行删除的同时,也将导致目标文件夹中的文件被清空,因而不会留下冗余文件。又由于链接文件占用几乎为零的空间,不仅可以减少磁盘的空间,还能够保证软件正常运行。优选地,本实施例提供的方法,还包括在搬移待搬移软件的过程中记录搬移信息, 并根据搬移信息对待搬移软件进行管理的优选步骤,具体内容如下由于搬移软件,大多数是对软件对应的文件进行操作,为了保证不影响软件的性能,在软件搬移的过程中,需要保证任何一个搬移过程都可以回退,即恢复到搬移前的状态。其中,回退有两种情况,一种是在搬移过程中,一种是在成功完成搬移之后。对于搬移过程中的回退,任何一个搬移过程失败,都需要将该待搬移软件恢复到搬移前的状态,因此, 记录的搬移信息应至少包括搬移的状态码,该状态码用来标识每个搬移过程是成功状态还是失败状态,如果是失败状态,还需要记录失败的原因信息,如果是成功状态,则继续进行搬移的其他过程。在成功搬移完软件之后,根据用户选择,同样也可以将搬移后的软件恢复到搬移前的状态。需要说明的是,在成功搬移完软件之后,即使不需要将软件恢复到搬移前的状态,也应该记录软件搬移的具体信息,例如,搬移前的路径及搬移后的路径等,以便用户对搬移软件进行管理。本实施例不对记录的搬移信息的内容进行具体限定,实际应用过程中,还可以记录其他信息。
8
204 对链接文件及目标文件夹标识提示信息,流程结束。该步骤为优选步骤,由于用户手动修改链接文件或者目标文件夹,可能导致软件无法使用,并导致两个文件夹做没有必要的同步,给用户的使用造成不便,因此,有必要提示用户手动修改链接文件及目标文件夹的危险,对于已经搬移的软件需要对用户保持透明,为此需要对建立的链接文件及目标文件夹标识提示信息,以提示用户不能随意修改、删除文件,从而保证软件的正常运行。本实施例不对具体标识方式进行限定,实际应用过程中,可以采取在链接文件及目标文件夹标志上添加叹号“! ”的方式,以起到提示用户的作用。进一步地,还可以在用户将鼠标移动到该链接文件或者目标文件夹时,显示“请不要删除,,等提示信息。本实施例提供的方法,通过将待搬移软件对应的文件拷贝到搬移的目标文件夹, 可以保证软件数据不丢失,并通过在删除原文件夹之后,在原文件夹所在位置建立指向目标文件夹所在路径的链接文件,可以保证在搬移前位置仍然可以访问该软件,因而不影响软件性能,且由于该方案无需加载驱动,从而可以避免因加载驱动带来的安全风险,具有安全、高效地提高磁盘可用空间的效果。实施例三参见图3,本实施例提供了一种搬移软件的装置,该装置包括确定模块301,用于确定待搬移软件的软件信息,软件信息至少包括待搬移软件对应的原文件夹信息;判断模块302,用于根据确定模块301确定的待搬移软件的软件信息判断待搬移软件是否满足搬移条件;搬移模块303,用于在判断模块302判断出待搬移软件符合搬移条件之后,将待搬移软件对应的原文件夹中的文件拷贝到搬移的目标文件夹,并删除原文件夹,在原文件夹所在位置建立指向目标文件夹所在路径的链接文件。其中,确定模块301在确定待搬移软件的软件信息之前,还用于获取搬移软件的指示,根据该指示确定待搬移软件。进一步地,确定模块301在确定待搬移软件的软件信息时,具体用于在注册表中检测并确定待搬移软件的软件信息;或者,建立包含软件信息的软件特征库,在软件特征库中检测并确定待搬移软件的软件信息。判断模块302,具体用于获取限制软件搬移的过滤名单,如果确定模块301确定的待搬移软件的软件信息与过滤名单中的过滤条件相匹配,则判断待搬移软件不满足搬移条件,否则,判断待搬移软件满足搬移条件;其中,本实施例不对过滤名单中的过滤条件进行具体限定,例如,至少包括需过滤的软件路径、软件名称和注册表键值中的一种。优选地,参见图4,该搬移软件装置,还包括记录管理模块304,用于在判断模块302判断出待搬移软件符合搬移条件时,在搬移模块303搬移待搬移软件的过程中记录搬移信息,并根据搬移信息对被搬移软件进行管理。优选地,参见图5,该搬移软件装置,还包括标识模块305,用于对链接文件及目标文件夹标识提示信息。
9
综上,本实施例提供的装置,通过将待搬移软件对应的文件拷贝到搬移的目标文件夹,可以保证软件数据不丢失,并通过删除原文件夹之后,在原文件夹所在位置建立指向目标文件夹所在路径的链接文件,可以保证在原文件位置仍然可以访问搬移前的文件,因而不影响软件性能,且由于该方案无需加载驱动,因而可以避免因加载驱动带来的安全风险,具有安全、高效地提高磁盘可用空间的效果。需要说明的是上述实施例提供的搬移软件的装置在搬移软件时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的搬移软件的装置与搬移软件的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。本发明实施例中的全部或部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种搬移软件的方法,其特征在于,所述方法包括确定待搬移软件的软件信息,所述软件信息至少包括所述待搬移软件对应的原文件夹 fn息;根据所述待搬移软件的软件信息判断所述待搬移软件是否满足搬移条件;如果是,则将所述待搬移软件对应的原文件夹中的文件拷贝到搬移的目标文件夹,并删除所述原文件夹,在所述原文件夹所在位置建立指向所述目标文件夹所在路径的链接文件。
2.根据权利要求1所述的方法,其特征在于,所述确定待搬移软件的软件信息之前,还包括获取搬移软件的指示,根据所述指示确定待搬移软件。
3.根据权利要求1所述的方法,其特征在于,所述确定所述待搬移软件的软件信息,具体包括在注册表中检测并确定所述待搬移软件的软件信息;或者,建立包含软件信息的软件特征库,在所述软件特征库中检测并确定所述待搬移软件的软件信息。
4.根据权利要求1所述的方法,其特征在于,所述根据所述待搬移软件的软件信息判断所述待搬移软件是否满足搬移条件,具体包括获取限制软件搬移的过滤名单,如果所述待搬移软件的软件信息与所述过滤名单中的过滤条件相匹配,则判断所述待搬移软件不满足搬移条件,否则,判断所述待搬移软件满足搬移条件。
5.根据权利要求4所述的方法,其特征在于,所述过滤名单中的过滤条件至少包括需过滤的软件路径、软件名称和注册表键值中的一种。
6.根据权利要求1所述的方法,其特征在于,所述根据所述待搬移软件的软件信息判断所述待搬移软件是否满足搬移条件之后,还包括如果判断所述待搬移软件符合搬移条件,则在搬移所述待搬移软件的过程中记录搬移信息,并根据所述搬移信息对所述待搬移软件进行管理。
7.根据权利要求1所述的方法,其特征在于,所述在所述原文件夹所在位置建立指向所述目标文件夹所在路径的链接文件之后,还包括对所述链接文件及所述目标文件夹标识提示信息。
8.—种搬移软件的装置,其特征在于,所述装置包括确定模块,用于确定待搬移软件的软件信息,所述软件信息至少包括所述待搬移软件对应的原文件夹信息;判断模块,用于根据所述确定模块确定的所述待搬移软件的软件信息判断所述待搬移软件是否满足搬移条件;搬移模块,用于在所述判断模块判断出所述待搬移软件符合搬移条件之后,将所述待搬移软件对应的原文件夹中的文件拷贝到搬移的目标文件夹,并删除所述原文件夹,在所述原文件夹所在位置建立指向所述目标文件夹所在路径的链接文件。
9.根据权利要求8所述的装置,其特征在于,所述确定模块在确定待搬移软件的软件信息之前,还用于获取搬移软件的指示,根据所述指示确定待搬移软件。
10.根据权利要求8所述的装置,其特征在于,所述确定模块在确定待搬移软件的软件信息时,具体用于在注册表中检测并确定所述待搬移软件的软件信息;或者,建立包含软件信息的软件特征库,在所述软件特征库中检测并确定所述待搬移软件的软件信息。
11.根据权利要求8所述的装置,其特征在于,所述判断模块,具体用于获取限制软件搬移的过滤名单,如果所述确定模块确定的所述待搬移软件的软件信息与所述过滤名单中的过滤条件相匹配,则判断所述待搬移软件不满足搬移条件,否则,判断所述待搬移软件满足搬移条件。
12.根据权利要求8所述的装置,其特征在于,所述装置,还包括记录管理模块,用于在所述判断模块判断出所述待搬移软件符合搬移条件时,在搬移所述待搬移软件的过程中记录搬移信息,并根据所述搬移信息对所述待搬移软件进行管理。
13.根据权利要求8所述的装置,其特征在于,所述装置,还包括 标识模块,用于对所述链接文件及所述目标文件夹标识提示信息。
全文摘要
本发明公开了一种搬移软件的方法及装置,属于计算机领域。所述方法包括确定待搬移软件的软件信息;根据待搬移软件的软件信息判断待搬移软件是否满足搬移条件;如果是,则将待搬移软件对应的原文件夹中的文件拷贝到搬移的目标文件夹,并删除原文件夹,在原文件夹所在位置建立指向目标文件夹所在路径的链接文件。本发明通过将待搬移软件对应的文件拷贝到搬移的目标文件夹,可以保证软件数据不丢失,并通过在原文件夹所在位置建立指向目标文件夹所在路径的链接文件,可以保证在搬移前位置仍可以访问该软件,因而不影响软件性能,且由于该方案无需加载驱动,从而可以避免因加载驱动带来的安全风险,具有安全、高效地提高磁盘可用空间的效果。
文档编号G06F9/46GK102214119SQ20101014300
公开日2011年10月12日 申请日期2010年4月7日 优先权日2010年4月7日
发明者拓鑫, 白宁, 郑全战, 马化腾, 高小明 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1