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

来源:百度知道 编辑:UC知道 时间:2024/05/25 09:31:17
如题,用getwindowthreadprocessid函数可以获取一个进程的ID,但这个进程被隐藏了之后就获取不到了,把自己提升到debug级也获取不到,请问还能通过什么办法获取该隐藏进程的ID.delphi编程
怎么恢复被隐藏的进程

恢复隐藏的进程然后用常规的方法来取得
你得先知道它是怎么隐藏的,可能是被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的,还是删除了进程的双向链表的对象的
不过这些都得在内核中操作,穷举是最方便不过的事情了