[发明专利]一种获取进程可执行文件路径的方法、装置及存储介质有效
申请号: | 202111509854.9 | 申请日: | 2021-12-10 |
公开(公告)号: | CN114385277B | 公开(公告)日: | 2023-08-29 |
发明(设计)人: | 沈忠立 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F16/11 |
代理公司: | 济南诚智商标专利事务所有限公司 37105 | 代理人: | 周杰 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 进程 可执行文件 路径 方法 装置 存储 介质 | ||
1.一种获取进程可执行文件路径的方法,其特征在于,包括:获取目标进程的目标pid,根据目标pid获取目标进程句柄;
调用第一函数,以目标进程句柄为参数执行第一函数,通过第一函数获取目标进程的可执行文件路径;
若通过第一函数获取目标进程的可执行文件路径失败,则通过第二函数来调用第三函数,以目标进程句柄为参数执行第三函数,通过第三函数获取目标进程的可执行文件路径;
若通过第三函数获取目标进程的可执行文件路径失败,则以目标进程句柄为参数执行第四函数,通过第四函数获取目标进程的可执行文件路径。
2.根据权利要求1所述的获取进程可执行文件路径的方法,其特征在于,将目标pid代入OpenProcess函数获取OpenProcess函数的返回值以获取目标进程的句柄,当OpenProcess函数返回值为空时,则提示目标进程句柄获取失败。
3.根据权利要求1所述的获取进程可执行文件路径的方法,其特征在于,通过第一函数获取目标进程的可执行文件路径包括:
调用第一函数,以目标进程句柄为参数执行第一函数,获取第一函数的返回值;
检测第一函数的返回值是否为零;
是则,通过第一函数获取目标进程的可执行文件路径失败;
否则,从第一函数返回值中获取存放目标进程的可执行文件路径的目标缓冲区,从目标缓冲区获取目标进程的可执行文件路径;关闭目标进程的句柄。
4.根据权利要求1所述的获取进程可执行文件路径的方法,其特征在于,通过第二函数来调用第三函数包括:
指定第三函数名称、第三函数所处的内核库;
以内核库和第三函数名称为参数执行第二函数获取内核库中第三函数的函数指针;
若第二函数获取的返回值为空则提示调用第三函数失败;
利用第三函数的函数指针调用第三函数。
5.根据权利要求1所述的获取进程可执行文件路径的方法,其特征在于,通过第三函数获取目标进程的可执行文件路径包括:
通过第二函数调用第三函数,以目标进程句柄为参数执行第三函数,获取第三函数的返回值;
检测第三函数的返回值是否为false;
是则,通过第三函数获取目标进程的可执行文件路径失败;
否则,从第三函数返回值中获取存放目标进程的可执行文件路径的目标缓冲区,从目标缓冲区获取目标进程的可执行文件路径;关闭目标进程的句柄。
6.根据权利要求1所述的获取进程可执行文件路径的方法,其特征在于,通过第四函数获取目标进程的可执行文件路径包括:
调用第四函数,以目标进程句柄为参数执行第四函数,获取第四函数的返回值;
检测第四函数返回值是否为零;
是则,通过第四函数获取目标进程的可执行文件路径失败,提示获取目标进程的可执行文件路径失败;
否则,从第四函数返回值中获取存放目标进程的可执行文件路径的目标缓冲区,从目标缓冲区获取目标进程的可执行文件的设备盘符路径;
将设备盘符路径转换为字符盘符路径。
7.根据权利要求3、5、6任一所述的获取进程可执行文件路径的方法,其特征在于,调用执行第一函数、第三函数或第四函数前,检测目标进程句柄是否有调用第一函数、第三函数或第四函数的权限;
是则,调用第一函数、第三函数或第四函数,以目标进程句柄为参数执行第一函数、第三函数或第四函数,获取第一函数、第三函数或第四函数的返回值;
否则,给目标进程句柄授权后,调用执行第一函数、第三函数或第四函数。
8.根据权利要求1所述的获取进程可执行文件路径的方法,其特征在于,所述第一函数相比第三函数和第四函数占用资源少。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111509854.9/1.html,转载请声明来源钻瓜专利网。