Delphi如何获取一个隐藏进程的程序的进程ID

Delphi如何获取一个隐藏进程的程序的进程ID,第1张

恢复隐藏的进程然后用常规的方法来取得

你得先知道它是怎么隐藏的,可能是被HOOK了系统的API,你恢复一下就行了

还有一种方法是穷举所有的PID值直接打开进程的空间

当然得先把系统可见的PID排除,然后穷举

for

i:=0

to

10000

{这个值可以再大些,没关系}

do

begin

if

i=系统可见的

then

//系统可见的,肯定不是要找的进程

else

begin

if

OpenProcess(XXX,XXX,i)>0

then

begin

//可能就是要找的进程的PID

end

end

end

我不是说了麻,系统中能列出的可以直接跳过

if

i=系统可见的

then

//系统可见的,肯定不是要找的进程

else

这里跳过系统中可见的

那得看它是如何隐藏的,是HOOK

API的,还是删除了进程的双向链表的对象的

不过这些都得在内核中 *** 作,穷举是最方便不过的事情了

获取其它软件路径通常的方法就是读取注册表(如果那个软件有写入注册表的话),对于QQ来说也是一样的,你可以在有QQ的机器上搜索一下Tencent或者QQ.exe试试看,比如在偶的机器上就有HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls下就有一个D:\Tencent\QQ\Bin\QQ.exe(当然其它的有写入QQ安装目录的注册表还有很多) 之后就简单了,直接去读取这个位置,怎么读注册表不用说了吧。 对于那些不写注册表也没有什么文件的软件来说,要定位位置唯一的方法就是全盘搜索它的exe文件名。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12013391.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存