[发明专利]一种获取进程可执行文件路径的方法、装置及存储介质有效
申请号: | 202111509854.9 | 申请日: | 2021-12-10 |
公开(公告)号: | CN114385277B | 公开(公告)日: | 2023-08-29 |
发明(设计)人: | 沈忠立 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F16/11 |
代理公司: | 济南诚智商标专利事务所有限公司 37105 | 代理人: | 周杰 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 进程 可执行文件 路径 方法 装置 存储 介质 | ||
本发明涉及获取进程可执行文件路径的方法、装置及存储介质。本申请获取目标进程的目标pid,根据目标pid获取目标进程句柄;调用第一函数,以目标进程句柄为参数执行第一函数,通过第一函数获取目标进程的可执行文件路径;若通过第一函数获取目标进程的可执行文件路径失败,则通过第二函数来调用第三函数,以目标进程句柄为参数执行第三函数,通过第三函数获取目标进程的可执行文件路径;若通过第三函数获取目标进程的可执行文件路径失败,则以目标进程句柄为参数执行第四函数,通过第四函数获取目标进程的可执行文件路径。本发明通过第一函数、第三函数和第四函数配合获取目标进程的可执行文件路径,适用范围更广,可靠性强。
技术领域
本发明涉及进程可执行文件路径获取技术领域,尤其涉及一种获取进程可执行文件路径的方法、装置及存储介质。
背景技术
操作系统中的每一个进程,都有其名称、pid、路径。其中,pid是操作系统维护的、用以唯一标识进程的一个数字。而路径,则是进程所对应可执行程序文件的硬盘位置。
对于安全软件而言,通过pid获取所对应可执行程序所在路径,是一项常见且非常有必要的操作。例如,对于进行资产清点的业务功能,其业务切入点就是在对系统中的进程进行枚举。在枚举到某一进程后,为了判断该进程是否是某一特定的软件的运行实例,需要根据其pid获取其所对应的安装目录、配置文件等信息。而获取这些信息的第一步,就是根据pid获取其可执行程序所在路径。然而,在Windows操作系统下,由于Windows历史问题和复杂的权限问题,目前缺乏“一站式”通过pid获取所对应可执行程序所在路径的方法,这限制了基于可执行程序所在路径的相关程序在Windows操作系统的应用。
目前Windows用户所使用操作系统版本的差异极大,从较为古老的Windows XP到最新的Windows 10,甚至尚未发布的Winodws 11,都不乏使用者。因此,为了能够使所开发的程序能够适用于更为广泛的Windows用户,有必要提供一种能够解决上述问题的获取进程可执行文件路径的方法。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本发明提供一种获取进程可执行文件路径的方法、装置及存储介质。
第一方面,本发明提供一种获取进程可执行文件路径的方法,包括:获取目标进程的目标pid,根据目标pid获取目标进程句柄;
调用第一函数,以目标进程句柄为参数执行第一函数,通过第一函数获取目标进程的可执行文件路径;
若通过第一函数获取目标进程的可执行文件路径失败,则通过第二函数来调用第三函数,以目标进程句柄为参数执行第三函数,通过第三函数获取目标进程的可执行文件路径;
若通过第三函数获取目标进程的可执行文件路径失败,则以目标进程句柄为参数执行第四函数,通过第四函数获取目标进程的可执行文件路径。
更进一步地,将目标pid代入OpenProcess函数获取OpenProcess函数的返回值以获取目标进程的句柄,当OpenProcess函数返回值为空时,则提示目标进程句柄获取失败。
更进一步地,通过第一函数获取目标进程的可执行文件路径包括:
调用第一函数,以目标进程句柄为参数执行第一函数,获取第一函数的返回值;
检测第一函数的返回值是否为零;
是则,通过第一函数获取目标进程的可执行文件路径失败;
否则,从第一函数返回值中获取存放目标进程的可执行文件路径的目标缓冲区,从目标缓冲区获取目标进程的可执行文件路径;关闭目标进程的句柄。
更进一步地,通过第二函数来调用第三函数包括:
指定第三函数名称、第三函数所处的内核库;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111509854.9/2.html,转载请声明来源钻瓜专利网。