使用createprocess创建了多个子进程,怎么样进行设置,如果父进程关闭了。所有由父进程创建的子进程会自动关闭。

解决方案 »

  1.   

    如果子进程是自己写的,可以利用进程间相互通讯,如果不是,可以先FindWindow/EnumWindows,或者EnumProcesses()得到进程,然后利用进程间通讯。或者暴力一点,CreateProcess最后一个结构体参数中有保存子进程的进程句柄,直接TerminateProcess()强制关闭
      

  2.   

    记下来父进程创建了哪些子进程,在父进程退出之前把这些子进程TerminateProcess了
      

  3.   

    1.子程序是你自己写的话可以在子程序里隔一段时间判断下父进程在不在(枚举进程、管道通信、消息、OpenMutex互拆体、内存共享...等等),不在就退出。
    2.父进程退出的时候发送消息SendMessage给子进程,或强制杀掉子进程。
    3.用这个函数DebugActiveProcess,参数传子进程的PID,父进程退出的话子进程绝对会退出。
      

  4.   

    当然是使用作业对象了,JOB。
      

  5.   

    http://blog.sina.com.cn/s/blog_6234a2f00100fkuq.html