CN104408201A - 垃圾文件的清理方法及装置 - Google Patents

垃圾文件的清理方法及装置 Download PDF

Info

Publication number
CN104408201A
CN104408201A CN201410785296.2A CN201410785296A CN104408201A CN 104408201 A CN104408201 A CN 104408201A CN 201410785296 A CN201410785296 A CN 201410785296A CN 104408201 A CN104408201 A CN 104408201A
Authority
CN
China
Prior art keywords
operating system
driver
current
described operating
cleaning
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.)
Granted
Application number
CN201410785296.2A
Other languages
English (en)
Other versions
CN104408201B (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.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201410785296.2A priority Critical patent/CN104408201B/zh
Publication of CN104408201A publication Critical patent/CN104408201A/zh
Application granted granted Critical
Publication of CN104408201B publication Critical patent/CN104408201B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种垃圾文件的清理方法及装置,其中:获取操作系统中安装的全部驱动程序以及操作系统当前使用的驱动程序;获取操作系统中安装的全部组件以及操作系统当前使用的组件;计算操作系统当前未使用的驱动程序和组件的容量大小并生成清理提示界面;当接收到清理操作指令时,清除操作系统当前未使用的驱动程序和组件。本发明的垃圾文件的清理方法及装置,能够扫描、计算当前未使用的驱动程序和组件的空间容量,能够对驱动和组件进行垃圾清除并使系统运行稳定,通过扫描能够获取垃圾文件比较准确的容量信息并显示给用户,能够大大减少冗余的驱动和组件对存储空间的占用,释放更多的存储空间,提高性能以及用户体验度。

Description

垃圾文件的清理方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种垃圾文件的清理方法及装置。
背景技术
随着技术的发展,在日常生活中对电脑、手机等终端越来越依赖,对电脑的运行速度的要求也越来越高。在使用一端时间后,电脑会产生大量的垃圾文件,会占用系统大量的内存以及硬盘的存储空间,在运行中会影响操作速度,影响用户的正常使用。为了能有效地提高运行速度,需要对电脑中的垃圾文件进行清理,释放更多的存储空间。
目前,垃圾文件的清理通常是通过扫描系统和常用的软件来识别垃圾软件,并进行清理的。通常,系统中安装有多个驱动程序,对于一个硬件可能安装有多个版本、公司的驱动程序,例如,网卡驱动、USB驱动等等,但通常一个硬件设备只与一个驱动程序绑定。当一个硬件设备安装有多个驱动时,会浪费大量的存储空间,影响电脑的性能。并且,在对组件进行升级的过程中,会下载各种应用程序的安装包进行安装,因此,会积累大量的不同版本的组件。但是,目前的垃圾文件的清理技术并没有对驱动程序、组件等进行清理。并且,由于系统中具有大量的硬链接文件的存在,使得在扫描的过程中,对于删除文件的大小有重复计算的情况发生,造成实际释放空间的大小与扫描预算释放空间的大小之间的差距比较大,使用户的感受度比较差。
发明内容
有鉴于此,本发明要解决的一个技术问题是提供一种垃圾文件的清理方法,能够扫描、计算当前未使用的驱动程序和组件的空间容量。
一种垃圾文件的清理方法,其中:获取操作系统中安装的全部驱动程序以及所述操作系统当前使用的驱动程序;获取操作系统中安装的全部组件以及所述操作系统当前使用的组件;计算所述操作系统当前未使用的驱动程序和组件的容量大小并生成清理提示界面;当接收到清理操作指令时,清除所述操作系统当前未使用的驱动程序和组件。
根据本发明的一个实施例,进一步的,所述获取操作系统中安装的全部组件以及所述操作系统当前使用的组件包括:从所述操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息,包括:键值、驱动程序安装目录;从所述操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息。
根据本发明的一个实施例,进一步的,所述获取操作系统中安装的全部组件以及所述操作系统当前使用的组件包括:从所述操作系统注册表中获取安装的全部组件信息;调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
根据本发明的一个实施例,进一步的,计算所述操作系统当前未使用的驱动程序和组件的容量大小包括:获取所述操作系统中当前未使用的驱动程序文件和组件文件的大小并相加,计算空间容量;其中,获取全部link文件,并获取link文件指向的目标文件;当判断多个link文件指向的目标文件的ID相同时,则不对此目标文件的大小进行重复相加计算,使得在计算空间容量时,对此目标文件的大小只相加一次。
根据本发明的一个实施例,调用DriverPackageUninstall函数删除当前未与硬件设备绑定的全部驱动程序。
根据本发明的一个实施例,进一步的,清除当前所述操作系统未使用的组件包括:调用IDismPackage接口的Remove方法,清除所述操作系统当前未使用的组件。
根据本发明的一个实施例,进一步的,在所述清理提示界面中,针对的驱动程序类型分别显示清除所述操作系统当前未使用的驱动程序空间容量;所述驱动程序类型包括:打印驱动程序、显卡驱动程序、网卡驱动程序;根据接收到的接收清理的操作指令中的驱动程序类型,清除所述操作系统当前未使用的与此驱动程序类型对应的驱动程序。
根据本发明的一个实施例,进一步的,所述操作系统包括:
WINDOWS VISTA、WINDOWS7、WINDOWS8。
本发明要解决的一个技术问题是提供一种垃圾文件的清理装置,能够扫描、计算当前未使用的驱动程序和组件的空间容量。
一种垃圾文件的清理装置,包括:驱动程序获取单元,用于获取操作系统中安装的全部驱动程序以及所述操作系统当前使用的驱动程序;组件获取单元,用于获取操作系统中安装的全部组件以及所述操作系统当前使用的组件;容量计算单元,用于计算所述操作系统当前未使用的驱动程序和组件的容量大小;提示界面生成单元,用于生成清理提示界面;清理单元,用于当接收到清理操作指令时,清除所述操作系统当前未使用的驱动程序和组件。
根据本发明的一个实施例,进一步的,所述驱动程序获取单元,用于从所述操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息,包括:键值、驱动程序安装目录;从所述操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息。
根据本发明的一个实施例,进一步的,所述组件获取单元,用于从所述操作系统注册表中获取安装的全部组件信息;调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
根据本发明的一个实施例,进一步的,所述容量计算单元,用于获取所述操作系统中当前未使用的驱动程序文件和组件文件的大小并相加,计算空间容量;其中,获取全部link文件,并获取link文件指向的目标文件;当判断多个link文件指向的目标文件的ID相同时,则不对此目标文件的大小进行重复相加计算,使得在计算空间容量时,对此目标文件的大小只相加一次。
根据本发明的一个实施例,进一步的,所述清理单元,用于调用DriverPackageUninstall函数删除当前未与硬件设备绑定的全部驱动程序。
根据本发明的一个实施例,进一步的,所述清理单元,还用于调用IDismPackage接口的Remove方法,清除所述操作系统当前未使用的组件。
根据本发明的一个实施例,进一步的,所述提示界面生成单元,用于在所述清理提示界面中,针对的驱动程序类型分别显示清除所述操作系统当前未使用的驱动程序空间容量;所述驱动程序类型包括:打印驱动程序、显卡驱动程序、网卡驱动程序;所述清理单元,还用于根据接收到的接收清理的操作指令中的驱动程序类型,清除所述操作系统当前未使用的与此驱动程序类型对应的驱动程序。
本发明的垃圾文件的清理方法及装置,能够扫描、计算当前未使用的驱动程序和组件的空间容量,能够对驱动和组件进行垃圾清除,并能够使系统运行稳定,通过扫描能够获取垃圾文件比较准确的容量信息,并显示给用户。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为根据本发明的垃圾文件的清理方法的一个实施例的流程图;
图2为根据本发明的垃圾文件的清理方法的另一个实施例的扫描流程图;
图3为根据本发明的垃圾文件的清理装置的一个实施例的结构框图;
图4和图5为提供给用户的进行垃圾文件清理的界面示意图。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中提到的软件,主要包括但不限于:视频软件、聊天工具、浏览器、游戏娱乐、网络游戏、音乐软件、安全杀毒、下载工具、办公软件、输入法、手机数码、图形图像、股票网银、阅读翻译、网络应用、主题壁纸、教育学习、压缩刻录、编程开发等,当然也并不限于此。
图1为根据本发明的垃圾文件的清理方法的一个实施例的流程图,如图1所示:
步骤101,获取操作系统中安装的全部驱动程序以及操作系统当前使用的驱动程序。
步骤102,获取操作系统中安装的全部组件以及操作系统当前使用的组件。
步骤103,计算清除操作系统当前未使用的驱动程序和组件后释放的空间容量并生成清理提示界面。
步骤104,当接收到清理操作指令时,清除操作系统当前未使用的驱动程序和组件。
本发明的垃圾文件的清理方法,扫描、计算当前未使用的驱动程序和组件后释放的空间容量,能够对驱动和组件进行垃圾清除,能够大大减少冗余的驱动和组件对存储空间的占用,释放更多的存储空间。
Windows注册表是帮助Windows控制硬件、软件、用户环境和Windows界面的一套数据文件,保存了驱动信息、软件安装信息、软件版本号和日期,序列号等。注册表控制所有32位应用程序和驱动,数据被分割成多层次的键和子键,建立分层次结构更易于编辑。每个键有成组的信息而且根据在其中的数据类型被命名。
所有软件、硬件、windows工作的设置都存放在HKEY_LOCAL_MACHINE键下,HKEY_LOCAL_MACHINE是一个显示控制系统和软件的处理键,它包括网络和硬件上所有的软件设置,例如,文件的位置,注册和未注册的状态,版本号等等。HKEY_LOCAL_MACHINE的子键包括:Enum、Root、HARDWARE、SOFTWARE等等。可以通过调用系统API,例如RegOpenKeyEx()(打开注册表项)、RegQueryValueEx()(取值)、RegCloseKey()(关闭注册表项)等等,对注册表进行操作。
在一个实施例中,可以调用RegQueryValueEx(),从操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息,包括:键值、驱动程序安装目录等。可以从操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息。
Windows提供更新包管理接口IDismPackageManager,主要用于获取更新信息,以及提交状态更改。IDismPackageManager接口的部分定义如下:
在一个实施例中,从操作系统注册表中获取安装的全部组件信息,调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
例如:CComQIPtr<IDismPackageCollection>pIDismPackageCollection;
IDismPackageManager*pIDismPackageManager;
HRESULT hr=pIDismPackageManager-
>GetPackageCollection(&pIDismPackageCollection)。
Windows提供IDismPackage接口,用于获取更新信息以及添加删除更新。IDismPackage接口的部分定义如下:
可以调用IDismPackage接口的Remove方法,清除操作系统未使用的组件。提供IDismPackage等接口的操作系统包括:WINDOWS VISTA、WINDOWS7、WINDOWS8等等。
例如,定义一个IDismPackageManager接口对象,通过GetPackageCollection方法获取操作系统中全部组件的所有组件信息,并根据返回的结果集判断组件是否被使用。
定义一个IDismPackage接口对象,当判断组件未使用时,则调用Remove方法删除,当删除后,调用IDismPackageManager接口的ProcessChanges方法,通知系统组件已发生更新,具体实现如下:
图2为根据本发明的垃圾文件的清理方法的另一个实施例的扫描流程图,如图2所示:
步骤201,从操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息。
步骤202,从操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息。
步骤203,从操作系统注册表中获取安装的全部组件信息。
步骤204,调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
步骤205,获取操作系统中当前未使用的驱动文件和组件文件大小并相加,计算空间容量。
步骤206,清理提示界面,显示一键清理的按钮。
在一个实施例中,获取操作系统中当前未使用的驱动程序文件和组件文件的大小并相加,计算空间容量。获取全部link文件,并获取link文件指向的目标文件。当判断多个link文件指向的目标文件的ID相同时,则不对此目标文件的大小进行重复相加计算,使得在计算空间容量时,对此目标文件的大小只相加一次。
link文件即为link或hard link,也称为硬链接。在系统中,对一个目标文件可能有多个link文件指向,在扫描的过程中,如果扫描到多个指向同一个目标文件的link文件,例如驱动程序,将多个link文件指向的目标文件大小都相加,可造成计算释放空间不准确的现象。在多个link文件指向同一目标文件时,对此目标文件的大小只相加一次,则能比较准确的计算能够释放空间的大小。
在一个实施例中,系统中的文件具有唯ID。首先用一个map去保存所有文件信息,定义为map<UINT64,DWORD>FileMap;搜索到老文件后将文件的FileId以及硬链接次数(即指向同一目标文件的link文件的数量)Links插入map中,并进行减一操作,Item为剩余的硬连接次数。
map<UINT64,DWORD>::iterator Item=FileMap.insert(pair<UINT64,DWORD>(FileId,Links)).first;
--Item->second;
如果引用次数变为0,说明文件可以彻底删除,从map移除,并将文件的物理尺寸累加到Size中。
遍历完成后,Size中就保存了总共可以释放的空间。
在一个实施例中,删除当前未与硬件设备绑定的全部驱动程序,可以采用直接删除的方式,调用DriverPackageUninstall函数(系统提供的API函数)删除当前未与硬件设备绑定的全部驱动程序。下面是一个调用DriverPackageUninstall删除驱动程序的例子:
BOOL NeedReboot;
thr=DriverPackageUninstall(DriverPath,DRIVER_PACKAGE_DELETE_FILES,NULL,&NeedReboot);
能够将指定安装目录下的驱动程序删除。
由于驱动程序被删除后,在系统的调用中可能会出现异常,因此,生成当前与硬件设备绑定的驱动程序的link文件,或者其它程序的link文件,将此link文件分别存储在被删除的当前未与硬件设备绑定的全部驱动程序的安装目录中。由于link文件较小,并且替换掉被删除的驱动,既能够释放空间,又能够保证系统稳定运行。
在一个实施例中,如图4所示,向用户提供清理提示界面,由用户选择是否进行清理。对于垃圾文件可以一键删除,也可以根据选择项进行选择删除。
例如,在清理提示界面中,可针对的驱动程序类型分别显示清除操作系统当前未使用的驱动程序空间容量;驱动程序类型包括:打印驱动程序、显卡驱动程序、网卡驱动程序等。
用户通过清理提示界面进行操作的选择,根据接收到的接收清理的操作指令中的驱动程序类型,清除操作系统当前未使用的与此驱动程序类型对应的驱动程序。
如图3所示,本发明提供一种垃圾文件的清理装置31。驱动程序获取单元311获取操作系统中安装的全部驱动程序以及操作系统当前使用的驱动程序。组件获取单元312获取操作系统中安装的全部组件以及操作系统当前使用的组件。
容量计算单元313计算清除操作系统当前未使用的驱动程序和组件后释放的空间容量。提示界面生成单元314生成清理提示界面;清理单元315当接收到清理操作指令时,清除操作系统当前未使用的驱动程序和组件。
在一个实施例中,驱动程序获取单元311从操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息,包括:键值、驱动程序安装目录。从操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息。
在一个实施例中,组件获取单元312从操作系统注册表中获取安装的全部组件信息;调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
在一个实施例中,容量计算单元313获取操作系统中当前未使用的驱动程序文件和组件文件的大小并相加,计算空间容量;其中,获取全部link文件,并获取link文件指向的目标文件。当判断多个link文件指向的目标文件的ID相同时,则不对此目标文件的大小进行重复相加计算,使得在计算空间容量时,对此目标文件的大小只相加一次。
在一个实施例中,清理单元315调用DriverPackageUninstall函数删除当前未与硬件设备绑定的全部驱动程序,或者,清理单元315调用DriverPackageUninstall函数删除当前未与硬件设备绑定的全部驱动程序,生成指向当前与硬件设备绑定的驱动程序的link文件。将此link文件分别存储在被删除的当前未与硬件设备绑定的全部驱动程序的安装目录中。清理单元315调用IDismPackage接口的Remove方法,清除操作系统当前未使用的组件。
在一个实施例中,提示界面生成单元314在清理提示界面中,针对的驱动程序类型分别显示清除操作系统当前未使用的驱动程序空间容量。驱动程序类型包括:打印驱动程序、显卡驱动程序、网卡驱动程序等。
清理单元315根据接收到的接收清理的操作指令中的驱动程序类型,清除操作系统当前未使用的与此驱动程序类型对应的驱动程序。
上述实施例提供的垃圾文件的清理方法及装置,能够对驱动和组件进行垃圾清除,并能够使系统运行稳定,通过扫描能够获取垃圾文件比较准确的容量信息,并显示给用户,能够大大减少冗余的驱动和组件对存储空间的占用,释放更多的存储空间,提高性能以及用户体验度。
在本发明的一个实施例中,软件的清理建议可以记录在已安装软件的软件信息库,例如移动设备或计算设备侧将已安装软件的软件信息库定期上报至云端服务器,从云端服务器中获取已安装软件的清理建议。例如云端服务器的数据库中记录了软件的名称、版本号、清理建议,在本发明的实施例中,CPU的驱动程序、显卡的驱动程序、微软Office、Windows启动菜单管理、银行类软件、安全类软件等的清理建议为建议保留(即不建议清理);影响系统正常运行,例如对系统带来缓慢,引起系统运行不流畅、引起磁盘空间不足、导致系统崩溃的软件的清理建议为建议清理。
可选地,在本发明的实施例中,该方法还包括:将已安装软件的软件信息库发送至云端服务器,由云端服务器按照预先设定的清理策略对已安装软件的软件信息库中的软件的清理建议进行更新;其中预先设定的清理策略至少包括以下中的任一种:涉及用户安全的软件不建议清理;涉及操作系统正常运行的软件不建议清理;影响操作系统运行速度的软件建议清理。接收所述云端服务器发送的更新后的已安装软件的软件信息库,从而实现由云端服务器侧对软件清理的风险进行控制。进一步地,本发明的实施例可以应用于安全软件中,例如,可以实施为一种软件清理工具,当然也并不限于此。
本发明实施例中的深度清理和更新的方法及装置,在实施过程中,也可以结合一些其他的清理操作,可包括:对软件进行卸载、清理软件卸载后的残余垃圾文件,清理或还原注册表信息等操作。具体的,用户可根据软件处理装置呈现在终端设备上的交互界面,触发所述交互界面上的所述软件对应的触发指示项,生成所述请求指令。若所述触发指示项为清理指示项,则所述请求指令为用于对软件进行清理的请求指令。或者,所述软件处理装置可以实施为一种安全软件,所述用于对软件进行清理的请求指令可以是用户通过触发所述安全软件的一键清理功能,单个软件清理功能、垃圾清理功能、痕迹清理功能、注册表清理功能时生成的。清理时机可以是空闲时间清理,或者根据用户通过安全软件提供的定时清理设定功能设定的定时时间对软件进行清理操作。
本发明实施例,可以实施为一种软件清理工具,当然也不限于此。用户可通过安全软件或者杀毒软件呈现的交互界面,通过触发所述交互界面中的相应触发指示项,生成用于对软件进行清理的请求指令。
本发明的实施例公开了:
A1、一种垃圾文件的清理方法,其中:
获取操作系统中安装的全部驱动程序以及所述操作系统当前使用的驱动程序;
获取操作系统中安装的全部组件以及所述操作系统当前使用的组件;
计算所述操作系统当前未使用的驱动程序和组件的容量大小并生成清理提示界面;
当接收到清理操作指令时,清除所述操作系统当前未使用的驱动程序和组件。
A2、如权利要求A1所述的方法,其特征在于,所述获取操作系统中安装的全部组件以及所述操作系统当前使用的组件包括:
从所述操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息,包括:键值、驱动程序安装目录;
从所述操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息。
A3、如权利要求A1所述的方法,其特征在于,所述获取操作系统中安装的全部组件以及所述操作系统当前使用的组件包括:
从所述操作系统注册表中获取安装的全部组件信息;
调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
A4、如权利要求A2或A3所述的方法,其特征在于,计算所述操作系统当前未使用的驱动程序和组件的容量大小包括:
获取所述操作系统中当前未使用的驱动程序文件和组件文件的大小并相加,计算空间容量;
其中,获取全部link文件,并获取link文件指向的目标文件;
当判断多个link文件指向的目标文件的ID相同时,则不对此目标文件的大小进行重复相加计算,使得在计算空间容量时,对此目标文件的大小只相加一次。
A5、如权利要求A4所述的方法,其特征在于,清除当前所述操作系统未使用的驱动程序包括:
调用DriverPackageUninstall函数删除当前未与硬件设备绑定的全部驱动程序。
A6、如权利要求A4所述的方法,其特征在于,清除当前所述操作系统未使用的驱动程序包括:
调用IDismPackage接口的Remove方法,清除所述操作系统当前未使用的组件。
A7、如权利要求A1所述的方法,其特征在于:
在所述清理提示界面中,针对的驱动程序类型分别显示清除所述操作系统当前未使用的驱动程序空间容量;所述驱动程序类型包括:打印驱动程序、显卡驱动程序、网卡驱动程序;
根据接收到的接收清理的操作指令中的驱动程序类型,清除所述操作系统当前未使用的与此驱动程序类型对应的驱动程序。
A8、如权利要求A1所述的方法,其特征在于:
所述操作系统包括:WINDOWS VISTA、WINDOWS7、WINDOWS8。
B9、一种垃圾文件的清理装置,包括:
驱动程序获取单元,用于获取操作系统中安装的全部驱动程序以及所述操作系统当前使用的驱动程序;
组件获取单元,用于获取操作系统中安装的全部组件以及所述操作系统当前使用的组件;
容量计算单元,用于计算所述操作系统当前未使用的驱动程序和组件的容量大小;
提示界面生成单元,用于生成清理提示界面;
清理单元,用于当接收到清理操作指令时,清除所述操作系统当前未使用的驱动程序和组件。
B10、如权利要求B9所述的装置,其特征在于:
所述驱动程序获取单元,用于从所述操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息,包括:键值、驱动程序安装目录;从所述操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息。
B11、如权利要求B9所述的装置,其特征在于:
所述组件获取单元,用于从所述操作系统注册表中获取安装的全部组件信息;调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
B12、如权利要求B10或B11所述的装置,其特征在于:
所述容量计算单元,用于获取所述操作系统中当前未使用的驱动程序文件和组件文件的大小并相加,计算空间容量;其中,获取全部link文件,并获取link文件指向的目标文件;当判断多个link文件指向的目标文件的ID相同时,则不对此目标文件的大小进行重复相加计算,使得在计算空间容量时,对此目标文件的大小只相加一次。
B13、如权利要求B12所述的装置,其特征在于:
所述清理单元,用于调用DriverPackageUninstall函数删除当前未与硬件设备绑定的全部驱动程序。
B14、如权利要求B12所述的装置,其特征在于:
所述清理单元,还用于调用IDismPackage接口的Remove方法,清除所述操作系统当前未使用的组件。
B15、如权利要求B9所述的装置,其特征在于:
所述提示界面生成单元,用于在所述清理提示界面中,针对的驱动程序类型分别显示清除所述操作系统当前未使用的驱动程序空间容量;所述驱动程序类型包括:打印驱动程序、显卡驱动程序、网卡驱动程序;
所述清理单元,还用于根据接收到的接收清理的操作指令中的驱动程序类型,清除所述操作系统当前未使用的与此驱动程序类型对应的驱动程序。
可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

Claims (10)

1.一种垃圾文件的清理方法,其中:
获取操作系统中安装的全部驱动程序以及所述操作系统当前使用的驱动程序;
获取操作系统中安装的全部组件以及所述操作系统当前使用的组件;
计算所述操作系统当前未使用的驱动程序和组件的容量大小并生成清理提示界面;
当接收到清理操作指令时,清除所述操作系统当前未使用的驱动程序和组件。
2.如权利要求1所述的方法,其特征在于,所述获取操作系统中安装的全部组件以及所述操作系统当前使用的组件包括:
从所述操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息,包括:键值、驱动程序安装目录;
从所述操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息;
所述获取操作系统中安装的全部组件以及所述操作系统当前使用的组件包括:
从所述操作系统注册表中获取安装的全部组件信息;
调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
3.如权利要求2所述的方法,其特征在于,计算所述操作系统当前未使用的驱动程序和组件的容量大小包括:
获取所述操作系统中当前未使用的驱动程序文件和组件文件的大小并相加,计算空间容量;
其中,获取全部link文件,并获取link文件指向的目标文件;
当判断多个link文件指向的目标文件的ID相同时,则不对此目标文件的大小进行重复相加计算,使得在计算空间容量时,对此目标文件的大小只相加一次。
4.如权利要求3所述的方法,其特征在于,清除当前所述操作系统未使用的驱动程序包括:
调用DriverPackageUninstall函数删除当前未与硬件设备绑定的全部驱动程序;
清除当前所述操作系统未使用的驱动程序包括:
调用IDismPackage接口的Remove方法,清除所述操作系统当前未使用的组件。
5.如权利要求1所述的方法,其特征在于:
在所述清理提示界面中,针对的驱动程序类型分别显示清除所述操作系统当前未使用的驱动程序空间容量;所述驱动程序类型包括:打印驱动程序、显卡驱动程序、网卡驱动程序;
根据接收到的接收清理的操作指令中的驱动程序类型,清除所述操作系统当前未使用的与此驱动程序类型对应的驱动程序;
所述操作系统包括:WINDOWS VISTA、WINDOWS7、WINDOWS8。
6.一种垃圾文件的清理装置,包括:
驱动程序获取单元,用于获取操作系统中安装的全部驱动程序以及所述操作系统当前使用的驱动程序;
组件获取单元,用于获取操作系统中安装的全部组件以及所述操作系统当前使用的组件;
容量计算单元,用于计算所述操作系统当前未使用的驱动程序和组件的容量大小;
提示界面生成单元,用于生成清理提示界面;
清理单元,用于当接收到清理操作指令时,清除所述操作系统当前未使用的驱动程序和组件。
7.如权利要求6所述的装置,其特征在于:
所述驱动程序获取单元,用于从所述操作系统的注册表中获取对于硬件设备安装的全部驱动程序信息,包括:键值、驱动程序安装目录;从所述操作系统的设备管理器中获取与硬件设备当前绑定的驱动程序信息;
所述组件获取单元,用于从所述操作系统注册表中获取安装的全部组件信息;调用IDismPackageManager接口的GetPackageCollection方法,获取操作系统中全部组件的更新信息。
8.如权利要求7所述的装置,其特征在于:
所述容量计算单元,用于获取所述操作系统中当前未使用的驱动程序文件和组件文件的大小并相加,计算空间容量;其中,获取全部l ink文件,并获取link文件指向的目标文件;当判断多个link文件指向的目标文件的ID相同时,则不对此目标文件的大小进行重复相加计算,使得在计算空间容量时,对此目标文件的大小只相加一次。
9.如权利要求7所述的装置,其特征在于:
所述清理单元,用于调用DriverPackageUninstall函数删除当前未与硬件设备绑定的全部驱动程序;
所述清理单元,还用于调用IDismPackage接口的Remove方法,清除所述操作系统当前未使用的组件。
10.如权利要求9所述的装置,其特征在于:
所述提示界面生成单元,用于在所述清理提示界面中,针对的驱动程序类型分别显示清除所述操作系统当前未使用的驱动程序空间容量;所述驱动程序类型包括:打印驱动程序、显卡驱动程序、网卡驱动程序;
所述清理单元,还用于根据接收到的接收清理的操作指令中的驱动程序类型,清除所述操作系统当前未使用的与此驱动程序类型对应的驱动程序。
CN201410785296.2A 2014-12-16 2014-12-16 垃圾文件的清理方法及装置 Active CN104408201B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410785296.2A CN104408201B (zh) 2014-12-16 2014-12-16 垃圾文件的清理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410785296.2A CN104408201B (zh) 2014-12-16 2014-12-16 垃圾文件的清理方法及装置

Publications (2)

Publication Number Publication Date
CN104408201A true CN104408201A (zh) 2015-03-11
CN104408201B CN104408201B (zh) 2017-09-19

Family

ID=52645832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410785296.2A Active CN104408201B (zh) 2014-12-16 2014-12-16 垃圾文件的清理方法及装置

Country Status (1)

Country Link
CN (1) CN104408201B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104951507A (zh) * 2015-05-21 2015-09-30 北京奇虎科技有限公司 一种清理移动终端应用中文件的方法及装置
CN106528856A (zh) * 2016-11-30 2017-03-22 深圳天珑无线科技有限公司 一种数据处理方法和装置
CN106557525A (zh) * 2015-09-30 2017-04-05 北京金山安全软件有限公司 应用程序残留文件的清理方法、装置及电子设备
CN107203552A (zh) * 2016-03-17 2017-09-26 阿里巴巴集团控股有限公司 垃圾回收方法及装置
CN107678698A (zh) * 2017-10-31 2018-02-09 努比亚技术有限公司 缓存数据清理方法、服务器、终端及计算机可读存储介质
CN108897569A (zh) * 2018-05-30 2018-11-27 福建天晴在线互动科技有限公司 iOS工程无用文件的清理方法及计算机可读存储介质
CN110287181A (zh) * 2019-07-01 2019-09-27 网联清算有限公司 数据清理方法、装置、电子设备和介质
CN113126936A (zh) * 2021-04-23 2021-07-16 深圳市爱商在线科技有限公司 一种适配多种文档类型的打印控件

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080005205A1 (en) * 2006-06-30 2008-01-03 Broadcom Corporation Fast and efficient method for deleting very large files from a filesystem
CN102999566A (zh) * 2012-11-06 2013-03-27 北京奇虎科技有限公司 清除设备使用痕迹的方法和装置
CN104094225A (zh) * 2011-11-28 2014-10-08 韦斯技术有限公司 创建或安装用于具有多个硬件平台中的一个的目标装置的磁盘映像

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080005205A1 (en) * 2006-06-30 2008-01-03 Broadcom Corporation Fast and efficient method for deleting very large files from a filesystem
CN104094225A (zh) * 2011-11-28 2014-10-08 韦斯技术有限公司 创建或安装用于具有多个硬件平台中的一个的目标装置的磁盘映像
CN102999566A (zh) * 2012-11-06 2013-03-27 北京奇虎科技有限公司 清除设备使用痕迹的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
苏东: "系统精简利器Dism++ 1.0.0.5V2", 《HTTP://BLOG.SINA.COM.CN/S/BLOG_4549D6770102V6N5.HTML》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104951507A (zh) * 2015-05-21 2015-09-30 北京奇虎科技有限公司 一种清理移动终端应用中文件的方法及装置
CN104951507B (zh) * 2015-05-21 2017-05-10 北京奇虎科技有限公司 一种清理移动终端应用中文件的方法及装置
CN106557525A (zh) * 2015-09-30 2017-04-05 北京金山安全软件有限公司 应用程序残留文件的清理方法、装置及电子设备
CN107203552A (zh) * 2016-03-17 2017-09-26 阿里巴巴集团控股有限公司 垃圾回收方法及装置
CN106528856A (zh) * 2016-11-30 2017-03-22 深圳天珑无线科技有限公司 一种数据处理方法和装置
CN107678698A (zh) * 2017-10-31 2018-02-09 努比亚技术有限公司 缓存数据清理方法、服务器、终端及计算机可读存储介质
CN107678698B (zh) * 2017-10-31 2020-11-17 太仓市昊博技术服务有限公司 缓存数据清理方法、服务器、终端及计算机可读存储介质
CN108897569A (zh) * 2018-05-30 2018-11-27 福建天晴在线互动科技有限公司 iOS工程无用文件的清理方法及计算机可读存储介质
CN110287181A (zh) * 2019-07-01 2019-09-27 网联清算有限公司 数据清理方法、装置、电子设备和介质
CN113126936A (zh) * 2021-04-23 2021-07-16 深圳市爱商在线科技有限公司 一种适配多种文档类型的打印控件

Also Published As

Publication number Publication date
CN104408201B (zh) 2017-09-19

Similar Documents

Publication Publication Date Title
CN104408201A (zh) 垃圾文件的清理方法及装置
KR101619557B1 (ko) 커스터마이즈된 컴퓨터 응용 프로그램 패키지
CN103380423B (zh) 用于私人云计算的系统和方法
KR101781447B1 (ko) 시스템 리셋
CN103645914B (zh) 一种软件清理方法及装置
JP2013509658A (ja) 将来の使用推量に基づく記憶メモリの割り当て
CN103927198A (zh) 一种软件清理方法及装置
CN101223496A (zh) 丰富的拖放用户界面
US20150317145A1 (en) Method and apparatus for notifying an enterprise administrator of new products and updates
CN108255989B (zh) 图片存储方法、装置、终端设备及计算机存储介质
US10375149B2 (en) Application registration and interaction
CN104536792A (zh) 清除应用程序残留文件的方法及装置
CN103902562B (zh) 一种终端数据库升级方法及相关装置
CN109033466A (zh) 页面分享方法、计算设备及计算机存储介质
CN105893471B (zh) 一种数据处理方法及电子设备
CN107391507B (zh) 移动端页面的更新方法和装置
CN103577417A (zh) 清理桌面的方法和装置
CN107220044B (zh) 基于元模型驱动业务对象的方法和装置
CN108604231B (zh) 镜像处理方法以及计算设备
US9361210B2 (en) Capturing domain validations and domain element initializations
CN104407905B (zh) 一种进行深度清理和更新的方法及装置
US7543272B1 (en) Method and apparatus for finding terminal classes in a collection of programming language classes
CN108363614B (zh) 一种应用的业务模块管理方法、装置及服务器
CN110825417A (zh) 应用程序更新方法及系统
CN110825450B (zh) App配置修改方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220725

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right