是否有可能通过CreateProcess或ShellExecute查明进程是由用户还是其他进程启动的?

时间:2014-01-15 11:36:02

标签: winapi process operating-system pid

我想知道是否有任何方法可以检查用户是否通过双击,在cmd中键入所需命令,通过资源管理器中的地址栏等或其他程序来启动特定进程使用CreateProcess()或ShellExecute()。

我尝试检查已创建进程的父进程id,但未能看到用户启动进程的父pid之间的任何一致性。我想知道是否有任何其他方式或使用ppids的傻瓜式方法。

2 个答案:

答案 0 :(得分:0)

首先,您必须确定“用户启动的过程”对您意味着什么。从Windows的角度来看,所有进程都是由另一个进程启动的,无论是否以某种方式由用户触发。

答案 1 :(得分:-2)

我只能想到获取属于当前登录用户的进程,否则我怀疑你能否区分系统上创建的进程。