一种应用程序安装的识别方法及系统技术方案

技术编号:19008956 阅读:21 留言:0更新日期:2018-09-22 08:51
本发明专利技术实施例公开了一种应用程序安装的识别方法及系统,方法包括在应用程序安装时,向系统注册表中写入程序的安装信息;在应用程序首次运行时,向应用程序的数据运行目录中写入程序的运行信息;依次检查应用程序的安装目录、系统注册表和数据运行目录的信息,根据信息的完整性判断应用程序的安装情况。本发明专利技术采用了多阶段的应用程序安装信息存储,最大程度上确保应用程序的安装信息能够被检测到,准备识别应用程序的安装情况。

An identification method and system for application installation

The embodiment of the invention discloses an identification method and a system for application program installation, including writing installation information of the program to the system registry when the application program is installed, writing operation information of the program to the data running directory of the application program when the application program is first run, and checking the application program sequentially. Installation directory, system registry and data running directory information, according to the integrity of information to determine the installation of the application. The invention adopts multi-stage application program installation information storage to ensure that the installation information of the application program can be detected to the greatest extent, and is ready to identify the installation of the application program.

【技术实现步骤摘要】
一种应用程序安装的识别方法及系统
本专利技术涉及应用程序安装
,具体地说是一种应用程序安装的识别方法及系统。
技术介绍
应用程序,指为完成某项或多项特定工作的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面。对于应用程序而言,操作系统未能提供完善的应用程序安装管理功能,因而在尝试探测某一应用程序是否安装到当前系统、是否曾经安装到当前系统,往往会陷入“无从下手”的困境,这一现状,对于应用程序的安装、卸载以及辅助操作造成了巨大障碍。现有技术对应用程序的安装识别多通过第三方提供的应用程序管理工具,但该工具并不专用于应用程序安装识别,对应用程序的安装情况的检测往往不准确、应用程序显示不完整的情况。
技术实现思路
本专利技术实施例中提供了一种应用程序安装的识别方法及系统,以解决现有技术中缺乏对应用程序安装识别方法的问题。为了解决上述技术问题,本专利技术实施例公开了如下技术方案:本专利技术第一方面提供了应用程序安装的识别方法,包括以下步骤:在应用程序安装时,向系统注册表中写入程序的安装信息;在应用程序首次运行时,向应用程序的数据运行目录中写入程序的运行信息;依次检查应用程序的安装目录、系统注册表和数据运行目录的信息,根据信息的完整性判断应用程序的安装情况。结合第一方面,在第一方面第一种可能的实现方式中,应用程序通过调用操作系统API将程序的安装信息写入系统注册表中。结合第一方面,在第一方面第二种可能的实现方式中,所述数据运行目录为ProgramData目录和UserProfile目录。结合第一方面,在第一方面第二种可能的实现方式中,向数据运行目录中写入程序运行信息的具体过程为:在ProgramData目录和UserProfile目录中分别创建一个文件夹;将程序的运行信息分别写入到两个文件夹中。结合第一方面,在第一方面第三种可能的实现方式中,所述依次检查应用程序的安装目录、系统注册表和数据运行目录的信息,根据信息的完整性判断应用程序的安装情况的具体过程为:调用file_exists函数,检查应用程序的安装目录是否存在且是否完整;若是,则判定应用程序已安装;若否,则分别读取注册表信息和数据运行目录的信息,判断应用程序的安装情况。结合第一方面,在第一方面第三种可能的实现方式中,所述读取注册表信息和数据运行目录的信息,判断应用程序的安装情况的具体过程为:读取注册表信息并判断信息是否读取成功;若未读取成功,判断是否读取到部分信息,若读取到部分信息则判定应用程序曾经安装,否则判定应用程序未安装;若注册表信息读取成功,分别读取数据运行目录的信息,判断是否读取到数据运行目录的全部信息,若读取到全部信息,则判定程序已安装,否则判断是否读取到部分信息,若读取到部分信息,则判定应用程序曾经安装,否则判定应用程序未安装。本专利技术第二方面提供了一种应用程序安装的识别系统,所述系统包括第一写入模块,用于在应用程序安装时,将程序的安装信息写入系统注册表中;第二写入模块,用于在应用程序首次运行时,将程序的运行信息写入应用程序的数据运行目录中;读取判定模块,用于依次读取应用程序的安装目录、系统注册表数据运行目录的信息,并根据信息的完整性判断应用程序的安装情况。结合第二方面,在第二方面第一种可能的实现方式中,所述读取模块包括第一检测单元,用于检查应用程序的安装目录,判断安装目录是否存在且是否完整;第二检测单元,在安装目录不完整时,分别读取注册表信息和数据运行目录的信息,判断应用程序的安装情况。结合第二方面,在第二方面第一种可能的实现方式中,所述第二检测单元还包括第一读取单元,用于读取注册表信息;第二读取单元,用于分别读取数据运行目录的信息;判定单元,在未检查到安装目录、未读取到注册表信息或未读取到数据运行目录的信息时,判定应用程序未安装;在读取到部分注册表信息或部分数据运行目录信息时,判定程序曾经安装;在检查到安装目录完整、注册表信息读取成功或数据运行目录信息读取成功时,判定应用程序已安装。本专利技术第二方面的所述应用程序安装的识别系统能够实现第一方面及第一方面的各实现方式中的方法,并取得相同的效果。
技术实现思路
中提供的效果仅仅是实施例的效果,而不是专利技术所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:1、在应用程序安装和首次运行时,分别将安装信息和运行信息写入注册表和数据运行目录中,为后续应用程序安装的识别提供了检查方向,且在应用程序安装和首次运行时,自动写入信息,操作方便,同时这种多方位备份,在最大程度上确保应用程序的安装信息能够被检测到,有效避免第三方操作带来的程序安装信息丢失。2、在查看应用程序的安装情况时,通过检查应用程序的安装目录、系统注册表和运行目录的信息,从而获知应用程序的安装情况,无需人为查看,识别效率高且识别的准确性高。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术方法的流程示意图;图2是本专利技术检查应用程序安装情况的流程示意图;图3是本专利技术系统的结构示意图。具体实施方式为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本专利技术进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本专利技术的不同结构。为了简化本专利技术的公开,下文中对特定例子的部件和设置进行描述。此外,本专利技术可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本专利技术省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本专利技术。如图1所示,应用程序安装的识别方法包括以下步骤:S1,在应用程序安装时,向系统注册表中写入程序的安装信息;S2,在应用程序首次运行时,向应用程序的数据运行目录中写入程序的运行信息;S3,依次检查应用程序的安装目录、系统注册表和数据运行目录的信息,根据信息的完整性判断应用程序的安装情况。步骤S1中,应用程序通过调用操作系统API(ApplicationProgrammingInterface,应用程序编程接口)将程序的安装信息写入系统注册表中。具体过程为:调用regquery,查询应用程序相应的注册表是否存在,若不存在,则创建该应用程序的注册表,然后向注册表中写入应用程序的安装信息。步骤S2中,数据运行目录为ProgramData目录和UserProfile目录,向这两个目录写入运行信息的具体过程为:调用boost的filesystem函数,在ProgramData目录和UserProfile目录中分别创建一个文件,然后把应用程序的运行信息分别写入到两个文件中。通过这种多方位备份,可以避免如用户手动前置删除数据等第三方操作带来的程序安装信息丢失。如图2所示,在步骤S3中,在需要进行应用程序安装状态检测时,首先执行S301检测应用程序的安装目录是否存在,并执行S302的操作,判断安装目录是否完整,若安装目录是完整的,直接输出S309应用程序已安装;若安装目录不完整,执行步骤S303读取注册表信息,并执本文档来自技高网
...
一种应用程序安装的识别方法及系统

【技术保护点】
1.一种应用程序安装的识别方法,其特征是:包括以下步骤:在应用程序安装时,向系统注册表中写入程序的安装信息;在应用程序首次运行时,向应用程序的数据运行目录中写入程序的运行信息;依次检查应用程序的安装目录、系统注册表和数据运行目录的信息,根据信息的完整性判断应用程序的安装情况。

【技术特征摘要】
1.一种应用程序安装的识别方法,其特征是:包括以下步骤:在应用程序安装时,向系统注册表中写入程序的安装信息;在应用程序首次运行时,向应用程序的数据运行目录中写入程序的运行信息;依次检查应用程序的安装目录、系统注册表和数据运行目录的信息,根据信息的完整性判断应用程序的安装情况。2.根据权利要求1所述的一种应用程序安装的识别方法,其特征是:应用程序通过调用操作系统API将程序的安装信息写入系统注册表中。3.根据权利要求1所述的一种应用程序安装的识别方法,其特征是:所述数据运行目录为ProgramData目录和UserProfile目录。4.根据权利要求3所述的一种应用程序安装的识别方法,其特征是:向数据运行目录中写入程序运行信息的具体过程为:在ProgramData目录和UserProfile目录中分别创建一个文件夹;将程序的运行信息分别写入到两个文件夹中。5.根据权利要求1所述的一种应用程序安装的识别方法,其特征是:所述依次检查应用程序的安装目录、系统注册表和数据运行目录的信息,根据信息的完整性判断应用程序的安装情况的具体过程为:调用file_exists函数,检查应用程序的安装目录是否存在且是否完整;若是,则判定应用程序已安装;若否,则分别读取注册表信息和数据运行目录的信息,判断应用程序的安装情况。6.根据权利要求5所述的一种应用程序安装的识别方法,其特征是:所述读取注册表信息和数据运行目录的信息,判断应用程序的安装情况的具体过程为:读取注册表信息并判断信息是否读取成功;若未读取成功...

【专利技术属性】
技术研发人员:王唯融
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1