一个进程如何知道是谁启动的自己,不能通过命令行传递的方式。

解决方案 »

  1.   

    http://www.codeproject.com/KB/threads/ParentPID.aspx
      

  2.   

    用进程遍列,应该有多种方法,ToolHelp API是其中之一,另一方法:
    http://www.qqgb.com/Program/VB/VBJQ/Program_187760.html
      

  3.   

    方法1、枚举进程获取th32ParentProcessID(用到的api:CreateToolhelp32Snapshot、Process32First、Process32Next)
    优点:简单方便
    缺点:判断不准确,因为如果创建子进程的父进程退出了,父进程的ID会被系统用来重新标识其他新创建的进程方法2、内核Hook创建进程API
    优点:判断准确
    缺点:内核Hook程序必须优先启动而且对菜鸟来说有一定的难度