CN106775960A - 一种对Windows进程的唯一标示方法及系统 - Google Patents

一种对Windows进程的唯一标示方法及系统 Download PDF

Info

Publication number
CN106775960A
CN106775960A CN201611254488.6A CN201611254488A CN106775960A CN 106775960 A CN106775960 A CN 106775960A CN 201611254488 A CN201611254488 A CN 201611254488A CN 106775960 A CN106775960 A CN 106775960A
Authority
CN
China
Prior art keywords
title
cryptographic hash
icon
pixel data
business name
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
CN201611254488.6A
Other languages
English (en)
Other versions
CN106775960B (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.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201611254488.6A priority Critical patent/CN106775960B/zh
Publication of CN106775960A publication Critical patent/CN106775960A/zh
Application granted granted Critical
Publication of CN106775960B publication Critical patent/CN106775960B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种对Windows进程的唯一标示方法及系统,属于计算机进程处理技术领域,其中,方法包括:获取正在运行进程的进程句柄和进程信息;从进程信息中获取进程名称,筛选掉重复出现的进程名称;通过筛选后的进程名称来找到对应的进程文件和进程文件路径,获取进程文件的版本信息中的公司名称;通过进程句柄和进程文件路径,获取进程图标像素的哈希值;客户端将进程有关信息发送给服务器,服务器接收客户端发送的信息并进行人工确认,建立进程的关系数据库。有益效果:进程图标像素数据的哈希值可用于唯一标示进程,获取的进程名称、进程公司名称与进程图标像素哈希值配合对进程进行区分和标示,建立进程关系数据库,从而准确区分和标示进程。

Description

一种对Windows进程的唯一标示方法及系统
技术领域
本发明涉及计算机进程处理技术领域,尤其是涉及一种对Windows进程的唯一标示方法及系统。
背景技术
软件在用户电脑上运行时,一方面会存在和一些进程有兼容性等问题,另一方面在某些场景下需要获取用户电脑上同时运行的进程有哪些,以方便定位程序遇到的问题。那么,如果知道用户电脑上有哪些进程正在运行,有利于软件的优化。
目前,通常的做法是通过查看正在运行的进程的名称获取正在运行的进程有哪些,但是在用户电脑上存在着各种各样的进程,难免会出现同样的进程名称,那么仅仅通过进程的名称不足以区分进程。
发明内容
本发明的目的在于克服上述技术不足,提出一种对Windows进程的唯一标示方法及系统,解决现有技术中无法准确区分进程名称相同的进程的技术问题。
为达到上述技术目的,本发明的技术方案提供一种对Windows进程的唯一标示方法,其中,包括:
S1、获取正在运行的进程列表,读取进程列表中所有进程的进程句柄和进程信息;
S2、从所述进程信息中获取进程名称,筛选掉重复出现的所述进程名称;
S3、通过筛选后的所述进程名称来找到对应的进程文件和进程文件路径,获取所述进程文件的版本信息,从所述版本信息中获取进程的公司名称;
S4、通过所述进程句柄和所述进程文件路径,获取进程图标像素数据的哈希值;
S5、客户端将所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值按照特定格式发送给服务器;
S6、服务器收到客户端发送的有关进程的信息后,解析出所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值,对解析的结果进行人工确认,建立进程的关系数据库。
本发明还提供一种对Windows进程的唯一标示系统,其中,包括:
读取进程模块:用于获取正在运行的进程列表,读取进程列表中所有进程的所述进程句柄和所述进程信息;
进程名称获取模块:用于从所述进程信息中获取所述进程名称,筛选掉重复出现的所述进程名称;
公司名称获取模块:用于通过筛选后的所述进程名称来找到对应的所述进程文件和所述进程文件路径,获取进程文件的所述版本信息,从所述版本信息中获取进程的公司名称;
图标像素哈希值获取模块:用于通过所述进程句柄和所述进程文件路径,获取所述进程图标像素数据的哈希值;
发送模块:用于利用客户端将所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值按照特定格式发送给服务器;
数据库建立模块:用于利用服务器在收到客户端发送的有关进程的信息后,解析出所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值,对解析的结果进行人工确认,建立进程的关系数据库。
与现有技术相比,本发明的有益效果包括:由于不同进程的图标不一样且图标像素数据的哈希值唯一,获取进程图标像素数据的哈希值来唯一标示进程,获取的进程名称、进程公司名称与进程图标像素哈希值配合对进程进行区分和标示,建立进程关系数据库,从而准确区分和标示进程。
附图说明
图1是本发明提供的一种对Windows进程的唯一标示方法流程图;
图2是本发明提供的一种对Windows进程的唯一标示系统结构框图。
附图中:1、对Windows进程的唯一标示系统,11、读取进程模块,12、进程名称获取模块,13、公司名称获取模块,14、图标像素哈希值获取模块,15、发送模块,16、数据库建立模块。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供了一种对Windows进程的唯一标示方法,其中,包括:
S1、获取正在运行的进程列表,读取进程列表中所有进程的进程句柄和进程信息;
S2、从进程信息中获取进程名称,筛选掉重复出现的进程名称;
S3、通过筛选后的进程名称来找到对应的进程文件和进程文件路径,获取进程文件的版本信息,从版本信息中获取进程的公司名称;
S4、通过进程句柄和进程文件路径,获取进程图标像素数据的哈希值;
S5、客户端将进程名称、进程的公司名称、进程图标像素数据的哈希值按照特定格式发送给服务器;
S6、服务器收到客户端发送的有关进程的信息后,解析出进程名称、进程的公司名称、进程图标像素数据的哈希值,对解析的结果进行人工确认,建立进程的关系数据库。
本发明所述的对Windows进程的唯一标示方法,步骤S1中:
调用API函数CreateToolhelp32Snapshot获取正在运行的进程的快照,然后调用API函数Process32First获取到第一个进程的句柄及信息,调用API函数Process32Next获取下一个进程的句柄及信息,直到获取的进程句柄为空则说明已经获取到所有正在运行进程的句柄和信息。
本发明所述的对Windows进程的唯一标示方法,步骤S3中:
调用API函数GetFileVersionInfoSizeA来判断容纳进程对应的磁盘文件版本信息所需要的缓冲区的大小,然后调用API函数GetFileVersionInfoA来获取进程对应的磁盘文件的版本信息,调用API函数VerQueryValueA将版本信息放入缓冲区,并从缓冲区中获取版本信息包含的公司名称。
本发明所述的对Windows进程的唯一标示方法,步骤S4中:
获取进程句柄和进程文件路径后,调用API函数ExtractIconA来获取进程对应的图标的句柄,再通过调用API函数GetIconInfo来获取图标的详细信息,然后通过API函数CreateCompatibleDC来创建一个与应用程序的当前显示器兼容的内存设备上下文环境,接着调用API函数GetDIBits来从图标的详细信息中获取图标的位图内容,该内容即是图标的像素数据,本发明实施例的HASH算法采用MD5算法(消息摘要算法第五版,为计算机安全领域广泛使用的一种散列函数),在获取到像素数据后,调用MD5的接口函数来计算像素数据的MD5值。
本发明所述的对Windows进程的唯一标示方法,步骤S5中:
客户端将筛选后的进程名称、进程的公司名称、进程图标像素数据的哈希值按照特定格式打包发送给服务器,具体格式如下:
ProcessName:“douyu.exe”进程名称是douyutv.exe;
ProcessCompany:“douyu”进程的公司名称是douyu;
ProcessIconHash:“5cc80069b584d67d1c0d6768e7dd8c57”进程图标像素数据的哈希值是5cc80069b584d67d1c0d6768e7dd8c57。
本发明所述的对Windows进程的唯一标示方法,步骤S6中:
若解析出的进程名称相同,且进程的公司名称不同或进程图标像素数据的哈希值不同,则获取对解析的结果进行人工确认的结果,查看进程名称相同的进程和进程名称相同的进程的公司名称,并可重新计算进程图标像素数据的哈希值,如果进程名称相同的进程是同一个进程,则将其筛选掉,筛选后的进程名称、进程的公司名称、进程图标像素数据的哈希值形成进程的关系数据库,在进程的关系数据库中通过进程名称可以查询到进程的公司名称及进程图标像素数据哈希值。
本发明还提供一种对Windows进程的唯一标示系统1,其中,包括:
读取进程模块11:用于获取正在运行的进程列表,读取进程列表中所有进程的进程句柄和进程信息;
进程名称获取模块12:用于从进程信息中获取进程名称,筛选掉重复出现的进程名称;
公司名称获取模块13:用于通过筛选后的进程名称来找到对应的进程文件和进程文件路径,获取进程文件的版本信息,从版本信息中获取进程的公司名称;
图标像素哈希值获取模块14:用于通过进程句柄和进程文件路径,获取进程图标像素数据的哈希值;
发送模块15:用于利用客户端将进程名称、进程的公司名称、进程图标像素数据的哈希值按照特定格式发送给服务器;
数据库建立模块16:用于利用服务器在收到客户端发送的有关进程的信息后,解析出进程名称、进程的公司名称、进程图标像素数据的哈希值,对解析的结果进行人工确认,建立进程的关系数据库。
本发明所述的对Windows进程的唯一标示系统1,公司名称获取模块13中:
获取进程文件的版本信息后,将进程文件的版本信息放入一缓冲区,再从缓冲区里获取版本信息包括的进程的公司名称。
本发明所述的对Windows进程的唯一标示系统1,图标像素哈希值获取模块14中:
通过进程句柄和进程文件路径,获取进程的图标句柄,从图标句柄中获取图标的像素数据,调用哈希值计算函数来计算像素数据的哈希值。
本发明所述的对Windows进程的唯一标示系统1,数据库建立模块16中:
若解析出的进程名称相同,且进程的公司名称不同或进程图标像素数据的哈希值不同,则获取对解析的结果进行人工确认的结果,查看进程名称相同的进程和进程名称相同的进程的公司名称,并可重新计算进程图标像素数据的哈希值,如果进程名称相同的进程是同一个进程,则将其筛选掉,筛选后的进程名称、进程的公司名称、进程图标像素数据的哈希值形成进程的关系数据库。
本发明提供的一种对Windows进程的唯一标示方法及系统在使用过程中,首先获取正在运行的进程列表,读取进程列表中所有进程的进程句柄和进程信息;然后从进程信息中获取进程名称,筛选掉重复出现的进程名称;通过筛选后的进程名称来找到对应的进程文件和进程文件路径,获取进程文件的版本信息,从版本信息中获取进程的公司名称;通过进程句柄和进程文件路径,获取进程图标像素数据的哈希值;客户端将进程名称、进程的公司名称、进程图标像素数据的哈希值按照特定格式发送给服务器;最后服务器收到客户端发送的有关进程的信息后,解析出进程名称、进程的公司名称、进程图标像素数据的哈希值,对解析的结果进行人工确认,建立进程的关系数据库。
本发明的有益效果包括:由于不同进程的图标不一样且图标像素数据的哈希值唯一,获取进程图标像素数据的哈希值来唯一标示进程,获取的进程名称、进程公司名称与进程图标像素哈希值配合对进程进行区分和标示,建立进程关系数据库,从而准确区分和标示进程。
以上所述本发明的具体实施方式,并不构成对本发明保护范围的限定。任何根据本发明的技术构思所做出的各种其他相应的改变与变形,均应包含在本发明权利要求的保护范围内。

Claims (8)

1.一种对Windows进程的唯一标示方法,其特征在于,包括:
S1、获取正在运行的进程列表,读取进程列表中所有进程的进程句柄和进程信息;
S2、从所述进程信息中获取进程名称,筛选掉重复出现的所述进程名称;
S3、通过筛选后的所述进程名称来找到对应的进程文件和进程文件路径,获取所述进程文件的版本信息,从所述版本信息中获取进程的公司名称;
S4、通过所述进程句柄和所述进程文件路径,获取进程图标像素数据的哈希值;
S5、客户端将所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值按照特定格式发送给服务器;
S6、服务器收到客户端发送的有关进程的信息后,解析出所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值,对解析的结果进行人工确认,建立进程的关系数据库。
2.如权利要求1所述的对Windows进程的唯一标示方法,其特征在于,步骤S3中:
获取所述进程文件的版本信息后,将所述进程文件的版本信息放入一缓冲区,再从缓冲区里获取版本信息包括的进程的公司名称。
3.如权利要求1所述的对Windows进程的唯一标示方法,其特征在于,步骤S4中:
通过所述进程句柄和所述进程文件路径,获取进程的图标句柄,从所述图标句柄中获取图标的像素数据,调用哈希值计算函数来计算像素数据的哈希值。
4.如权利要求1所述的对Windows进程的唯一标示方法,其特征在于,步骤S6中:
若解析出的所述进程名称相同,且所述进程的公司名称不同或所述进程图标像素数据的哈希值不同,则获取对解析的结果进行人工确认的结果,查看进程名称相同的进程和进程名称相同的进程的公司名称,并可重新计算所述进程图标像素数据的哈希值,如果所述进程名称相同的进程是同一个进程,则将其筛选掉,筛选后的所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值形成进程的关系数据库。
5.一种对Windows进程的唯一标示系统,其特征在于,包括:
读取进程模块:用于获取正在运行的进程列表,读取进程列表中所有进程的所述进程句柄和所述进程信息;
进程名称获取模块:用于从所述进程信息中获取所述进程名称,筛选掉重复出现的所述进程名称;
公司名称获取模块:用于通过筛选后的所述进程名称来找到对应的所述进程文件和所述进程文件路径,获取进程文件的所述版本信息,从所述版本信息中获取进程的公司名称;
图标像素哈希值获取模块:用于通过所述进程句柄和所述进程文件路径,获取所述进程图标像素数据的哈希值;
发送模块:用于利用客户端将所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值按照特定格式发送给服务器;
数据库建立模块:用于利用服务器在收到客户端发送的有关进程的信息后,解析出所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值,对解析的结果进行人工确认,建立进程的关系数据库。
6.如权利要求5所述的对Windows进程的唯一标示系统,其特征在于,公司名称获取模块中:
获取进程文件的所述版本信息后,将进程文件的版本信息放入一缓冲区,再从缓冲区里获取所述版本信息包括的所述进程的公司名称。
7.如权利要求5所述的对Windows进程的唯一标示系统,其特征在于,图标像素哈希值获取模块中:
通过所述进程句柄和所述进程文件路径,获取进程的所述图标句柄,从所述图标句柄中获取图标的像素数据,调用哈希值计算函数来计算像素数据的哈希值。
8.如权利要求5所述的对Windows进程的唯一标示系统,其特征在于,数据库建立模块中:
若解析出的所述进程名称相同,且所述进程的公司名称不同或所述进程图标像素数据的哈希值不同,则获取对解析的结果进行人工确认的结果,查看进程名称相同的进程和进程名称相同的进程的公司名称,并可重新计算所述进程图标像素数据的哈希值,如果所述进程名称相同的进程是同一个进程,则将其筛选掉,筛选后的所述进程名称、所述进程的公司名称、所述进程图标像素数据的哈希值形成进程的关系数据库。
CN201611254488.6A 2016-12-30 2016-12-30 一种对Windows进程的唯一标示方法及系统 Active CN106775960B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611254488.6A CN106775960B (zh) 2016-12-30 2016-12-30 一种对Windows进程的唯一标示方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611254488.6A CN106775960B (zh) 2016-12-30 2016-12-30 一种对Windows进程的唯一标示方法及系统

Publications (2)

Publication Number Publication Date
CN106775960A true CN106775960A (zh) 2017-05-31
CN106775960B CN106775960B (zh) 2020-04-10

Family

ID=58954401

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611254488.6A Active CN106775960B (zh) 2016-12-30 2016-12-30 一种对Windows进程的唯一标示方法及系统

Country Status (1)

Country Link
CN (1) CN106775960B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804191A (zh) * 2018-06-11 2018-11-13 山东华软金盾软件股份有限公司 一种获取Windows运行程序图标的方法
CN111782412A (zh) * 2019-04-03 2020-10-16 阿里巴巴集团控股有限公司 一种数据的获取方法、服务器及相关系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754900B1 (en) * 1997-11-24 2004-06-22 International Business Machines Corporation System for providing web browser access to an operating system desktop
CN102147845A (zh) * 2011-04-18 2011-08-10 北京思创银联科技股份有限公司 进程监控方法
CN105786628A (zh) * 2016-02-24 2016-07-20 浪潮通用软件有限公司 一种分布式系统线程同步的处理方法
US20160328098A1 (en) * 2015-05-06 2016-11-10 Haworth, Inc. Virtual workspace viewport location markers in collaboration systems
CN106209734A (zh) * 2015-04-30 2016-12-07 阿里巴巴集团控股有限公司 进程的身份认证方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754900B1 (en) * 1997-11-24 2004-06-22 International Business Machines Corporation System for providing web browser access to an operating system desktop
CN102147845A (zh) * 2011-04-18 2011-08-10 北京思创银联科技股份有限公司 进程监控方法
CN106209734A (zh) * 2015-04-30 2016-12-07 阿里巴巴集团控股有限公司 进程的身份认证方法和装置
US20160328098A1 (en) * 2015-05-06 2016-11-10 Haworth, Inc. Virtual workspace viewport location markers in collaboration systems
CN105786628A (zh) * 2016-02-24 2016-07-20 浪潮通用软件有限公司 一种分布式系统线程同步的处理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804191A (zh) * 2018-06-11 2018-11-13 山东华软金盾软件股份有限公司 一种获取Windows运行程序图标的方法
CN111782412A (zh) * 2019-04-03 2020-10-16 阿里巴巴集团控股有限公司 一种数据的获取方法、服务器及相关系统

Also Published As

Publication number Publication date
CN106775960B (zh) 2020-04-10

Similar Documents

Publication Publication Date Title
CN109308681B (zh) 图像处理方法和装置
CN103020619B (zh) 一种自动切分电子化笔记本中手写条目的方法
KR102002024B1 (ko) 객체 라벨링 처리 방법 및 객체 관리 서버
CN106560840B (zh) 一种图像信息识别处理方法及装置
CN102779264B (zh) 一种实现条码识读的方法及装置
CN111402120B (zh) 一种标注图像处理方法及装置
JP2019109562A (ja) フォーム種別学習システムおよび画像処理装置
CN103597500A (zh) 用于辨识对象中的文本信息的系统和方法
CN102938061A (zh) 方便电子化的专业笔记本及其页码自动识别方法
CN104238819A (zh) 移动终端中显示屏状态的检测方法及系统
US11106908B2 (en) Techniques to determine document recognition errors
CN109784339A (zh) 图片识别测试方法、装置、计算机设备及存储介质
CN108121648B (zh) 一种界面错误监控方法
EP4224338A1 (en) Data labeling method, apparatus, and system, device, and storage medium
WO2017016384A1 (zh) 短信处理方法、信息处理方法及装置、移动终端、存储介质
CN106775960A (zh) 一种对Windows进程的唯一标示方法及系统
CN109064121B (zh) 一种签署电子合同的方法及装置
CN110261554A (zh) 一种食品安全检测系统及方法
CN114494751A (zh) 证照信息识别方法、装置、设备及介质
CN114529933A (zh) 一种合同数据差异性的比对方法、装置、设备和介质
US11080808B2 (en) Automatically attaching optical character recognition data to images
KR20220149028A (ko) 이미지 기반 테이블 정보 생성 방법
US10963690B2 (en) Method for identifying main picture in web page
CN107861931B (zh) 模板文件处理方法、装置、计算机设备和存储介质
CN112215276A (zh) 一种对抗网络的训练方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
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