I will jump right in, to be brief and descriptive:
C++, Windows API
I am creating child processes using CreateProcess
to run external (command-l
You can use Job objects to kill all the processes as a unit. You create a job object via the CreateJobObject API, and assign a process to it with AssignProcessToJobObject. New processes created by a process in a job object belong to the same job object by default. Calling TerminateJobObject will terminate all associated processes in the job object.