CN108170437B - 一种应用管理方法及终端设备 - Google Patents
一种应用管理方法及终端设备 Download PDFInfo
- Publication number
- CN108170437B CN108170437B CN201611115189.4A CN201611115189A CN108170437B CN 108170437 B CN108170437 B CN 108170437B CN 201611115189 A CN201611115189 A CN 201611115189A CN 108170437 B CN108170437 B CN 108170437B
- Authority
- CN
- China
- Prior art keywords
- target application
- registry data
- data corresponding
- registry
- application group
- 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.)
- Active
Links
- 238000007726 management method Methods 0.000 title claims abstract description 13
- 238000009434 installation Methods 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 41
- 238000000034 method Methods 0.000 claims abstract description 14
- 238000004590 computer program Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000013479 data entry Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种应用管理方法及终端设备,其中方法包括:从注册表中获取到目标应用组所对应的安装信息;其中,所述目标应用组由至少一个目标应用组成;基于所述目标应用组所对应的安装信息,判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,基于判断结果针对所述每一个目标应用对应的注册表数据进行处理;获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理。
Description
技术领域
本发明涉及信息处理领域中的信息管理技术,尤其涉及一种应用管理方法及终端设备。
背景技术
在一个安装了WPS的Windows系统下,如果第三方软件需要使用Windows的office组件来做PPT、Excel的文件操作时,需要通过注册表来读取office组件的信息以便加载组件,在正常加载了office组件之后方能做PPT、Excel的文件读写操作。而因为安装了WPS之后,WPS将篡改office组件的注册表信息,这将导致无法正常调起office组件来做文件操作。此外,WPS在篡改office组件之后即便卸载WPS或重装Microsoft office都不能自动修复office组件注册表数据,也无法正常在个人开发软件中加载office组件。
发明内容
本发明实施例提供一种应用管理方法及终端设备,能至少解决现有技术中存在的上述问题。
本发明实施例提供一种应用管理方法,应用于终端设备,所述方法包括:
从注册表中获取到目标应用组所对应的安装信息;其中,所述目标应用组由至少一个目标应用组成;
基于所述目标应用组所对应的安装信息,判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,基于判断结果针对所述每一个目标应用对应的注册表数据进行处理;
获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理。
本发明实施例还提供了一种终端设备,所述终端设备包括:
信息获取单元,用于从注册表中获取到目标应用组所对应的安装信息;其中,所述目标应用组由至少一个目标应用组成;
第一处理单元,用于基于所述目标应用组所对应的安装信息,判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,基于判断结果针对所述每一个目标应用对应的注册表数据进行处理;
第二处理单元,用于获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理。
本发明实施例中提供的一种应用管理方法及终端设备,在安装了目标应用组之后,基于目标应用组对应的安装信息,判断每一个目标应用对应的注册数据是否需要调整,并判断目标应用组对应的调用接口的注册表数据是否需要调整,进而基于两个判断结果进行处理。如此,根据安装信息对目标应用对应的注册表进行管理以及调整,从而避免若安装目标应用之后安装其他应用对目标应用的注册表产生修改时,目标应用无法正常调用等问题。
附图说明
图1为本发明实施例中终端设备硬件结构示意图;
图2为本发明实施例应用管理方法流程示意图一;
图3为本发明实施例场景示意图一;
图4-1为本发明实施例场景示意图二;
图4-2为本发明实施例场景示意图三;
图5-1为本发明实施例应用管理方法流程示意图二;
图5-2为本发明实施例场景示意图四;
图5-3为本发明实施例场景示意图五;
图6为本发明实施例终端设备组成结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步详细说明。
现在将参考附图描述实现本发明各个实施例的终端设备。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
终端设备可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的终端设备以及诸如数字TV、台式计算机等等的固定终端。下面,假设终端是终端设备。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
图1为实现本发明各个实施例的终端设备的硬件结构示意。
终端设备100可以包括通信单元110、用户输入单元130、输出单元150、存储器160、接口单元170、控制器180和电源单元190等等。图1示出了具有各种组件的终端设备,但是应理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。将在下面详细描述终端设备的元件。
通信单元110通常包括一个或多个组件,其允许终端设备100与无线通信系统或网络之间的无线电通信。
用户输入单元130可以根据用户输入的命令生成键输入数据以控制终端设备的各种操作。用户输入单元130允许用户输入各种类型的信息,并且可以包括键盘、锅仔片、触摸板(例如,检测由于被接触而导致的电阻、压力、电容等等的变化的触敏组件)、滚轮、摇杆等等。特别地,当触摸板以层的形式叠加在显示单元151上时,可以形成触摸屏。
接口单元170用作至少一个外部装置与终端设备100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。识别模块可以是存储用于验证用户使用终端设备100的各种信息并且可以包括用户识别模块(UIM)、客户识别模块(SIM)、通用客户识别模块(USIM)等等。另外,具有识别模块的装置(下面称为"识别装置")可以采取智能卡的形式,因此,识别装置可以经由端口或其它连接装置与终端设备100连接。接口单元170可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到终端设备100内的一个或多个元件或者可以用于在终端设备和外部装置之间传输数据。
另外,当终端设备100与外部底座连接时,接口单元170可以用作允许通过其将电力从底座提供到终端设备100的路径或者可以用作允许从底座输入的各种命令信号通过其传输到终端设备的路径。从底座输入的各种命令信号或电力可以用作用于识别终端设备是否准确地安装在底座上的信号。输出单元150被构造为以视觉、音频和/或触觉方式提供输出信号(例如,音频信号、视频信号、警报信号、振动信号等等)。输出单元150可以包括显示单元151等等。
存储器160可以存储由控制器180执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而且,存储器160可以存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的数据。
存储器160可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等等。而且,终端设备100可以与通过网络连接执行存储器160的存储功能的网络存储装置协作。
控制器180通常控制终端设备的总体操作。例如,控制器180执行与语音通话、数据通信、视频通话等等相关的控制和处理。另外,控制器180可以包括用于再现(或回放)多媒体数据的多媒体模块1810,多媒体模块1810可以构造在控制器180内,或者可以构造为与控制器180分离。控制器180可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。
电源单元190在控制器180的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。
这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器180中实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器160中并且由控制器180执行。
基于上述终端设备硬件结构,提出本发明以下各个实施例。
实施例一、
本发明实施例提供了一种应用管理方法,应用于终端设备,如图2所示,包括:
步骤201:从注册表中获取到目标应用组所对应的安装信息;其中,所述目标应用组由至少一个目标应用组成;
步骤202:基于所述目标应用组所对应的安装信息,判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,基于判断结果针对所述每一个目标应用对应的注册表数据进行处理;
步骤203:获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理。
这里,所述终端设备可以为能够安装所述目标应用组的任意一种终端设备,比如,可以为个人电脑、笔记本、平板等等,本实施例中不进行穷举。
上述目标应用组可以为由多个应用组成的一组应用,可以为office组件,office组件中可以根据用户的选择具备有多种应用,比如,如图3所示,有的用户可以安装有office组件中的word软件、PowerPoint软件、Excel软件;有的用户可以仅安装其中的Word软件和Excel软件。总之,每一个用户在终端设备中安装的目标应用组中包括有目标应用的种类以及数量可以不同,本实施例中不进行穷举。
另外,上述步骤202以及步骤203的操作顺序本实施例中不进行限定,可以为执行完步骤202后再执行步骤203,也可以为先执行步骤203然后执行步骤202,或者,可以为步骤202以及步骤203同时执行。
上述步骤201中,所述从注册表中获取到目标应用组所对应的安装信息,包括:从所述注册表中获取到所述目标应用组所对应的版本信息;至少将所述版本信息作为所述目标应用组的安装信息。
此外,从注册表中还可以获取到针对所述目标应用组对应的安装路径信息。
上述目标应用组所对应的版本信息表征最新的版本信息,也就是说,针对最后安装的一版目标应用获取到其对应的版本信息;或者,获取到对应的版本信息以及对应的安装路径信息。
下面分别针对如何对目标应用组中的每一个目标应用进行是否需要进行调整的判断、以及如何针对目标应用组所对应的调用接口进行是否需要调整的判断进行说明:
首先,针对如何对目标应用组中的每一个目标应用进行是否需要进行调整的判断,具体包括:
所述判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,基于判断结果针对所述每一个目标应用对应的注册表数据进行处理之前,所述方法还包括:
逐个检测是否能够提取所述目标应用组中的每一个目标应用对应的至少一个注册表数据;若无法提取到所述目标应用对应的至少一个注册表数据,则基于所述安装信息生成并添加所述目标应用对应的至少一个注册表数据;
若提取到所述目标应用对应的至少一个注册表数据,则判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整。
其中,每一个目标应用可以对应有多个注册表数据,本实施例中针对每一个注册表数据均进行判断,或者,也可以为仅针对一个目标应用在同一个安装路径下的一个注册表数据进行判断,这里不进行限定。
比如,参见图4-1~图4-2,目标应用组为office组件,用户安装了其中的word软件和PowerPoint软件;如图4-1以其中的PowerPoint为例,若遍历了终端设备的存储空间后,未查找到PowerPoint对应的注册表数据,则可以确定该软件的注册表数据被篡改了,那么就需要重新生成一个对应的注册表数据;基于所述安装信息生成并添加所述目标应用对应的至少一个注册表数据,最终如图4-2所示,在PowerPoint具备有对应的注册表数据。
所述判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,包括:
从所述目标应用组中的每一个目标应用对应的注册表数据中,至少获取到所述注册表数据对应的版本信息;判断所述目标应用的注册表数据中的版本信息、与所述目标应用组对应的版本信息是否相同,若相同,则确定所述目标应用的注册表数据不需要进行调整;若不相同,则确定所述目标应用的注册表数据需要进行调整。
进一步地,所述基于判断结果针对所述每一个目标应用对应的注册表数据进行处理,包括:
当判断结果为所述目标应用的注册表数据需要进行调整时,基于所述目标应用组的版本信息对所述目标应用的注册表数据进行修改并保存;
或者,
当判断结果为所述目标应用的注册表数据需要进行调整时,基于所述目标应用组的版本信息以及安装路径信息,对所述目标应用的注册表数据进行修改并保存。
接下来,如何针对目标应用组所对应的调用接口进行是否需要调整的判断进行说明,包括:
所述获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,包括:
获取到所述目标应用组的调用接口所对应的注册表数据,检测所述调用接口对应的注册表数据中是否包含有其他应用的接口配置信息;若所述调整接口对应的注册表数据中包含有其他应用的接口配置信息,则确定调用接口所对应的所述注册表数据需要进行调整。
具体来说,需要检测所述目标应用组的调用接口对应的全部注册表数据;其中,目标应用组的调用接口为针对第三方应用的调用接口,比如,当前开启了一个第三方应用,在该应用中需要添加一个excel表格,那么就需要通过该调用接口调用所述目标应用组中的一个应用。每一个目标应用均对应一个调用接口,那么全部注册表数据可以包括有每一个目标应该用的调用接口所对应的注册表数据。
所述基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理,包括:当判断结果为确定调用接口所对应的所述注册表数据需要进行调整时,基于所述目标应用组的版本信息以及安装路径信息,对所述确定调用接口所对应的所述注册表数据需要进行修改并保存。
上述方案,可以应用于独立的office组件检测、修复软件,也可用于任意需要使用office组件进行PPT、Excel等Windows office文件做读写操作的系统中。在需要使用的office组件来进行PPT、Excel等文件的读写操作,创建office组件的Instance之前做一个office组件的修复操作,通过本实施例提供的方案进行调整操作,通过获取已安装的最新版本的Microsoft office软件信息,去一项项修复被WPS篡改的注册表项。下面结合图5-1,提供一种具体的实施方案:
步骤1:读取注册表App Paths信息,获取到office组件的安装信息,记录安装的最新版本和安装路径;
步骤2:读取注册表msppt.olb注册表项数据,如果未读取到该项数据表项则根据步骤1获取到的版本信息添加msppt.old注册表项,调至步骤4;
比如,参见图5-2,其中,示意出msppt.olb注册表数据{91493442-5A91-11CF-8700-00AA0060263B};若果没有检测到该数据,则新建该项注册表项,在其下添加TypeLib项,给TypeLib项添加属性:1.默认属性数据对应{00020424-0000-0000-C000-000000000046}串,2.Version即版本号,这个版本号即为步骤1获取到的版本信息。如此,完成添加msppt.old注册表项的处理。
步骤3:检测注册表项msppt.olb的数据是否正常,若与步骤1获取到的版本不统一则根据最新版本同步修改该注册表项;比如,如果步骤1获取的版本信息是2.a,而从步骤2中读取的Version数据是3.0,则将其修改成2.a。
步骤4:读取注册表VBE6EXT.olb注册表项数据,如果未读取到该项数据表项则根据步骤1获取到的版本信息添加VBE6EXT.olb注册表项,调至步骤6;
步骤5:检测注册表项VBE6EXT.olb的数据是否正常,若与步骤1获取到的版本不统一则根据最新版本同步修改该注册表项;
步骤6:读取注册表LocalServer目录下的office应用程序(如powerpnt.exe)注册表项,如果未读取到该项数据表项则根据步骤1获取到的版本信息添加对应注册表项,调至步骤8;
步骤7:检测注册表项LocalServer的数据是否正常,若与步骤1获取到的版本不统一则根据最新版本同步修改该注册表项;
步骤8:读取注册表LocalServer32目录下的office应用程序(如powerpnt.exe)注册表项,如果未读取到该项数据表项则根据步骤1获取到的版本信息添加对应注册表项,调至步骤10;
步骤9:检测注册表项LocalServer32的数据是否正常,若与步骤1获取到的版本不统一则根据最新版本同步修改该注册表项;
步骤10:读取注册表msppt.olb注册表项数据,检测其所有子项,如果只有一个子项则跳至步骤11(因为该子项就是步骤2、3修复的子项),否则对每个子项的Version做检测,若与步骤1获取到的版本不符则根据最新版本同步修改version信息;
步骤11:读取注册表MSO.dll注册表项数据,检测其所有子项,在每个子项中查找是否包含WPS的ksoapi.dll配置,如果存在,则修改默认MSO.dll注册表数据,具体可以为:根据步骤1获取的office组件安装路径计算出MSO.dll的路径保存到子项配置中;比如,图5-3中,安装了多个office版本,MSO.dll组件的所有子项是指在左边{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}下展开的能看到各个版本的配置项。
步骤12:在该修复动作完成之后可正常使用office组件创建PPT、Excel实例进行文件读写操作。
如此,本方案可在个人开发软件中动态检测office组件状态并及时修复,即便用户在多次卸载或者重装Microsoft office和WPS软件后,也无需担心两者的冲突而导致的office组件的不可用问题重复出现。同时本方案在个人开发软件中,可在用户无感知情况下自动修复office组件的注册表项数据被篡改问题。
可见,通过采用上述方案,就能够在安装了目标应用组之后,基于目标应用组对应的安装信息,判断每一个目标应用对应的注册数据是否需要调整,并判断目标应用组对应的调用接口的注册表数据是否需要调整,进而基于两个判断结果进行处理。如此,根据安装信息对目标应用对应的注册表进行管理以及调整,从而避免若安装目标应用之后安装其他应用对目标应用的注册表产生修改时,目标应用无法正常调用等问题。
实施例二、
本发明实施例提供了一种终端设备,如图6所示,所述终端设备包括:
信息获取单元61,用于从注册表中获取到目标应用组所对应的安装信息;其中,所述目标应用组由至少一个目标应用组成;
第一处理单元62,用于基于所述目标应用组所对应的安装信息,判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,基于判断结果针对所述每一个目标应用对应的注册表数据进行处理;
第二处理单元63,用于获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理。
这里,所述终端设备可以为能够安装所述目标应用组的任意一种终端设备,比如,可以为个人电脑、笔记本、平板等等,本实施例中不进行穷举。
上述目标应用组可以为由多个应用组成的一组应用,可以为office组件,office组件中可以根据用户的选择具备有多种应用,比如,如图3所示,有的用户可以安装有office组件中的word软件、PowerPoint软件、Excel软件;有的用户可以仅安装其中的Word软件和Excel软件。总之,每一个用户在终端设备中安装的目标应用组中包括有目标应用的种类以及数量可以不同,本实施例中不进行穷举。
所述信息获取单元,用于从所述注册表中获取到所述目标应用组所对应的版本信息;至少将所述版本信息作为所述目标应用组的安装信息。
此外,从注册表中还可以获取到针对所述目标应用组对应的安装路径信息。
上述目标应用组所对应的版本信息表征最新的版本信息,也就是说,针对最后安装的一版目标应用获取到其对应的版本信息;或者,获取到对应的版本信息以及对应的安装路径信息。
下面分别针对如何对目标应用组中的每一个目标应用进行是否需要进行调整的判断、以及如何针对目标应用组所对应的调用接口进行是否需要调整的判断进行说明:
首先,针对如何对目标应用组中的每一个目标应用进行是否需要进行调整的判断,具体包括:
所述第一处理单元,用于逐个检测是否能够提取所述目标应用组中的每一个目标应用对应的至少一个注册表数据;若无法提取到所述目标应用对应的至少一个注册表数据,则基于所述安装信息生成并添加所述目标应用对应的至少一个注册表数据;
若提取到所述目标应用对应的至少一个注册表数据,则判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整。
其中,每一个目标应用可以对应有多个注册表数据,本实施例中针对每一个注册表数据均进行判断,或者,也可以为仅针对一个目标应用在同一个安装路径下的一个注册表数据进行判断,这里不进行限定。
比如,参见图4-1~图4-2,目标应用组为office组件,用户安装了其中的word软件和PowerPoint软件;如图4-1以其中的PowerPoint为例,若遍历了终端设备的存储空间后,未查找到PowerPoint对应的注册表数据,则可以确定该软件的注册表数据被篡改了,那么就需要重新生成一个对应的注册表数据;基于所述安装信息生成并添加所述目标应用对应的至少一个注册表数据,最终如图4-2所示,在PowerPoint具备有对应的注册表数据。
所述第一处理单元,用于从所述目标应用组中的每一个目标应用对应的注册表数据中,至少获取到所述注册表数据对应的版本信息;判断所述目标应用的注册表数据中的版本信息、与所述目标应用组对应的版本信息是否相同,若相同,则确定所述目标应用的注册表数据不需要进行调整;若不相同,则确定所述目标应用的注册表数据需要进行调整。
进一步地,所述第一处理单元,用于当判断结果为所述目标应用的注册表数据需要进行调整时,基于所述目标应用组的版本信息对所述目标应用的注册表数据进行修改并保存;
或者,
当判断结果为所述目标应用的注册表数据需要进行调整时,基于所述目标应用组的版本信息以及安装路径信息,对所述目标应用的注册表数据进行修改并保存。
接下来,如何针对目标应用组所对应的调用接口进行是否需要调整的判断进行说明,包括:
所述第二处理单元,用于获取到所述目标应用组的调用接口所对应的注册表数据,检测所述调用接口对应的注册表数据中是否包含有其他应用的接口配置信息;若所述调整接口对应的注册表数据中包含有其他应用的接口配置信息,则确定调用接口所对应的所述注册表数据需要进行调整。
具体来说,需要检测所述目标应用组的调用接口对应的全部注册表数据;其中,目标应用组的调用接口为针对第三方应用的调用接口,比如,当前开启了一个第三方应用,在该应用中需要添加一个excel表格,那么就需要通过该调用接口调用所述目标应用组中的一个应用。每一个目标应用均对应一个调用接口,那么全部注册表数据可以包括有每一个目标应该用的调用接口所对应的注册表数据。
所述第二处理单元,用于当判断结果为确定调用接口所对应的所述注册表数据需要进行调整时,基于所述目标应用组的版本信息以及安装路径信息,对所述确定调用接口所对应的所述注册表数据需要进行修改并保存。
上述方案,可以应用于独立的office组件检测、修复软件,也可用于任意需要使用office组件进行PPT、Excel等Windows office文件做读写操作的系统中。在需要使用的office组件来进行PPT、Excel等文件的读写操作,创建office组件的Instance之前做一个office组件的修复操作,通过本实施例提供的方案进行调整操作,通过获取已安装的最新版本的Microsoft office软件信息,去一项项修复被WPS篡改的注册表项。下面结合图5,提供一种具体的实施方案:
步骤1:读取注册表App Paths信息,获取到office组件的安装信息,记录安装的最新版本和安装路径;
步骤2:读取注册表msppt.olb注册表项数据,如果未读取到该项数据表项则根据步骤1获取到的版本信息添加msppt.old注册表项,调至步骤4;
步骤3:检测注册表项msppt.olb的数据是否正常,若与步骤1获取到的版本不统一则根据最新版本同步修改该注册表项;
步骤4:读取注册表VBE6EXT.olb注册表项数据,如果未读取到该项数据表项则根据步骤1获取到的版本信息添加VBE6EXT.olb注册表项,调至步骤6;
步骤5:检测注册表项VBE6EXT.olb的数据是否正常,若与步骤1获取到的版本不统一则根据最新版本同步修改该注册表项;
步骤6:读取注册表LocalServer目录下的office应用程序(如powerpnt.exe)注册表项,如果未读取到该项数据表项则根据步骤1获取到的版本信息添加对应注册表项,调至步骤8;
步骤7:检测注册表项LocalServer的数据是否正常,若与步骤1获取到的版本不统一则根据最新版本同步修改该注册表项;
步骤8:读取注册表LocalServer32目录下的office应用程序(如powerpnt.exe)注册表项,如果未读取到该项数据表项则根据步骤1获取到的版本信息添加对应注册表项,调至步骤10;
步骤9:检测注册表项LocalServer32的数据是否正常,若与步骤1获取到的版本不统一则根据最新版本同步修改该注册表项;
步骤10:读取注册表msppt.olb注册表项数据,检测其所有子项,如果只有一个子项则跳至步骤11(因为该子项就是步骤2、3修复的子项),否则对每个子项的Version做检测,若与步骤1获取到的版本不符则根据最新版本同步修改version信息;
步骤11:读取注册表MSO.dll注册表项数据,检测其所有子项,在每个子项中查找是否包含WPS的ksoapi.dll配置,如果存在,则修改默认MSO.dll注册表数据,具体可以为:根据步骤1获取的office组件安装路径计算出MSO.dll的路径保存到子项配置中;
步骤12:在该修复动作完成之后可正常使用office组件创建PPT、Excel实例进行文件读写操作。
如此,本方案可在个人开发软件中动态检测office组件状态并及时修复,即便用户在多次卸载或者重装Microsoft office和WPS软件后,也无需担心两者的冲突而导致的office组件的不可用问题重复出现。同时本方案在个人开发软件中,可在用户无感知情况下自动修复office组件的注册表项数据被篡改问题。
可见,通过采用上述方案,就能够在安装了目标应用组之后,基于目标应用组对应的安装信息,判断每一个目标应用对应的注册数据是否需要调整,并判断目标应用组对应的调用接口的注册表数据是否需要调整,进而基于两个判断结果进行处理。如此,根据安装信息对目标应用对应的注册表进行管理以及调整,从而避免若安装目标应用之后安装其他应用对目标应用的注册表产生修改时,目标应用无法正常调用等问题。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种应用管理方法,应用于终端设备,其特征在于,所述方法包括:
从注册表中获取到目标应用组所对应的版本信息;至少将所述版本信息作为所述目标应用组的安装信息;
其中,所述目标应用组由至少一个目标应用组成;
当未提取到所述目标应用对应的至少一个注册表数据时,基于所述目标应用组的安装信息添加所述目标应用对应的至少一个注册表数据;
基于所述目标应用组所对应的安装信息,判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,基于判断结果针对所述每一个目标应用对应的注册表数据进行处理;
获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理。
2.根据权利要求1所述的方法,其特征在于,所述当未提取到所述目标应用对应的至少一个注册表数据时,基于所述目标应用组的安装信息添加所述目标应用对应的至少一个注册表数据,包括:
逐个检测是否能够提取所述目标应用组中的每一个目标应用对应的至少一个注册表数据;
若无法提取到所述目标应用对应的至少一个注册表数据,则基于所述安装信息生成并添加所述目标应用对应的至少一个注册表数据。
3.根据权利要求2所述的方法,其特征在于,所述判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,包括:
从所述目标应用组中的每一个目标应用对应的注册表数据中,至少获取到所述注册表数据对应的版本信息;
判断所述目标应用的注册表数据中的版本信息、与所述目标应用组对应的版本信息是否相同,若相同,则确定所述目标应用的注册表数据不需要进行调整;若不相同,则确定所述目标应用的注册表数据需要进行调整。
4.根据权利要求3所述的方法,其特征在于,所述基于判断结果针对所述每一个目标应用对应的注册表数据进行处理,包括:
当判断结果为所述目标应用的注册表数据需要进行调整时,基于所述目标应用组的版本信息对所述目标应用的注册表数据进行修改并保存;
或者,
当判断结果为所述目标应用的注册表数据需要进行调整时,基于所述目标应用组的版本信息以及安装路径信息,对所述目标应用的注册表数据进行修改并保存。
5.根据权利要求1所述的方法,其特征在于,所述获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,包括:
获取到所述目标应用组的调用接口所对应的注册表数据,检测所述调用接口对应的注册表数据中是否包含有其他应用的接口配置信息;
若所述调用接口对应的注册表数据中包含有其他应用的接口配置信息,则确定调用接口所对应的所述注册表数据需要进行调整。
6.根据权利要求5所述的方法,其特征在于,所述基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理,包括:
当判断结果为确定调用接口所对应的所述注册表数据需要进行调整时,基于所述目标应用组的版本信息以及安装路径信息,对所述确定调用接口所对应的所述注册表数据需要进行修改并保存。
7.一种终端设备,其特征在于,所述终端设备包括:
信息获取单元,用于从注册表中获取到目标应用组所对应的版本信息;至少将所述版本信息作为所述目标应用组的安装信息;其中,所述目标应用组由至少一个目标应用组成;
第一处理单元,用于当未提取到所述目标应用对应的至少一个注册表数据时,基于所述目标应用组的安装信息添加所述目标应用对应的至少一个注册表数据;基于所述目标应用组所对应的安装信息,判断所述目标应用组中的每一个目标应用对应的注册表数据是否需要进行调整,基于判断结果针对所述每一个目标应用对应的注册表数据进行处理;
第二处理单元,用于获取到所述目标应用组的调用接口所对应的注册表数据,判断所述调用接口所对应的注册表数据是否需要进行调整,基于判断结果针对所述目标应用组的调用接口进行注册表数据的处理。
8.根据权利要求7所述的终端设备,其特征在于,所述第一处理单元,用于逐个检测是否能够提取所述目标应用组中的每一个目标应用对应的至少一个注册表数据;若无法提取到所述目标应用对应的至少一个注册表数据,则基于所述安装信息生成并添加所述目标应用对应的至少一个注册表数据。
9.根据权利要求8所述的终端设备,其特征在于,所述第一处理单元,用于从所述目标应用组中的每一个目标应用对应的注册表数据中,至少获取到所述注册表数据对应的版本信息;判断所述目标应用的注册表数据中的版本信息、与所述目标应用组对应的版本信息是否相同,若相同,则确定所述目标应用的注册表数据不需要进行调整;若不相同,则确定所述目标应用的注册表数据需要进行调整。
10.根据权利要求9所述的终端设备,其特征在于,所述第一处理单元,用于当判断结果为所述目标应用的注册表数据需要进行调整时,基于所述目标应用组的版本信息对所述目标应用的注册表数据进行修改并保存;
或者,
当判断结果为所述目标应用的注册表数据需要进行调整时,基于所述目标应用组的版本信息以及安装路径信息,对所述目标应用的注册表数据进行修改并保存。
11.根据权利要求7所述的终端设备,其特征在于,所述第二处理单元,用于获取到所述目标应用组的调用接口所对应的注册表数据,检测所述调用接口对应的注册表数据中是否包含有其他应用的接口配置信息;若所述调用接口对应的注册表数据中包含有其他应用的接口配置信息,则确定调用接口所对应的所述注册表数据需要进行调整。
12.根据权利要求11所述的终端设备,其特征在于,所述第二处理单元,用于当判断结果为确定调用接口所对应的所述注册表数据需要进行调整时,基于所述目标应用组的版本信息以及安装路径信息,对所述确定调用接口所对应的所述注册表数据需要进行修改并保存。
13.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1至6任一项所述的应用管理方法的步骤。
14.一种终端设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至6任一项所述的应用管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611115189.4A CN108170437B (zh) | 2016-12-07 | 2016-12-07 | 一种应用管理方法及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611115189.4A CN108170437B (zh) | 2016-12-07 | 2016-12-07 | 一种应用管理方法及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108170437A CN108170437A (zh) | 2018-06-15 |
CN108170437B true CN108170437B (zh) | 2021-03-12 |
Family
ID=62526591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611115189.4A Active CN108170437B (zh) | 2016-12-07 | 2016-12-07 | 一种应用管理方法及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108170437B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101304409A (zh) * | 2008-06-28 | 2008-11-12 | 华为技术有限公司 | 恶意代码检测方法及系统 |
CN104461753A (zh) * | 2014-11-23 | 2015-03-25 | 国云科技股份有限公司 | 一种防止应用程序检测Windows虚拟机信息的方法 |
US9405524B1 (en) * | 2014-04-30 | 2016-08-02 | Allscripts Software, Llc | Software verification system and methods |
CN105893000A (zh) * | 2014-10-28 | 2016-08-24 | 北京确安科技股份有限公司 | 防止测试机系统时间被非法修改的方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130145361A1 (en) * | 2011-12-01 | 2013-06-06 | International Business Machines Corporation | Discovering and installing web application plugins |
CN102799500B (zh) * | 2012-06-25 | 2014-04-30 | 腾讯科技(深圳)有限公司 | 系统修复方法及装置 |
CN105302654B (zh) * | 2014-07-25 | 2019-10-08 | 腾讯科技(深圳)有限公司 | 一种修复浏览器内核的方法和装置 |
-
2016
- 2016-12-07 CN CN201611115189.4A patent/CN108170437B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101304409A (zh) * | 2008-06-28 | 2008-11-12 | 华为技术有限公司 | 恶意代码检测方法及系统 |
US9405524B1 (en) * | 2014-04-30 | 2016-08-02 | Allscripts Software, Llc | Software verification system and methods |
CN105893000A (zh) * | 2014-10-28 | 2016-08-24 | 北京确安科技股份有限公司 | 防止测试机系统时间被非法修改的方法 |
CN104461753A (zh) * | 2014-11-23 | 2015-03-25 | 国云科技股份有限公司 | 一种防止应用程序检测Windows虚拟机信息的方法 |
Non-Patent Citations (1)
Title |
---|
软件配置错误诊断与修复技术研究;陈伟等;《软件学报》;20150615;第26卷(第6期);第1285-1305页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108170437A (zh) | 2018-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105094903B (zh) | 对固件进行升级的方法及装置 | |
CN109964227B (zh) | 更新SELinux安全策略的方法及终端 | |
CN109947449B (zh) | 系统升级方法、装置、存储介质及电子设备 | |
CN107273160A (zh) | 一种版本升级的方法及装置 | |
CN110825563B (zh) | 系统恢复方法、装置以及电子设备 | |
CN106933593B (zh) | 一种基于移动终端的系统切换方法和装置 | |
CN107168818B (zh) | 终端及刷机失败恢复方法 | |
CN109375937A (zh) | 系统升级方法、装置、终端设备及存储介质 | |
CN108920159B (zh) | 一种安全升级方法、装置及电子设备 | |
US20190235884A1 (en) | Method and system for disabling non-deletable application in mobile terminal | |
CN106484779B (zh) | 文件操作方法及装置 | |
CN109491825B (zh) | 一种定位开机异常问题的方法、装置、存储介质及终端 | |
CN112463199A (zh) | 一种系统升级方法及终端 | |
US11379458B2 (en) | Electronic device and data management method thereof | |
KR20160016405A (ko) | 데이터 처리 방법 및 그 전자 장치 | |
CN112181467B (zh) | 终端的存储器固件升级方法、装置、终端和存储介质 | |
US20210011736A1 (en) | Method and apparatus for managing application | |
CN116700768B (zh) | 一种应用的处理方法及相关装置 | |
CN109634782B (zh) | 一种系统健壮性的检测方法、装置、存储介质及终端 | |
CN106155808B (zh) | 计算机系统资源的管理方法及装置 | |
CN108170437B (zh) | 一种应用管理方法及终端设备 | |
CN107968799B (zh) | 一种信息获取方法、终端设备及系统 | |
CN114880003A (zh) | 智能终端的系统升级方法、智能终端及存储介质 | |
CN105787302A (zh) | 一种应用程序的处理方法、装置及电子设备 | |
CN112650513B (zh) | 程序升级方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |