use Win32::Process::Info; use Data::Dumper; $pi = Win32::Process::Info->new (); $pi->Set (elapsed_in_seconds => 0); # In clunks, not seconds. @pids = $pi->ListPids (); # Get all known PIDs @info = $pi->GetProcInfo (); # Get the max %subs = $pi->Subprocesses (); # Figure out subprocess relationships. @info = grep {$_->{Name} =~ m/perl/} $pi->GetProcInfo (); # All processes with 'perl' in name. #print $info; #print $pi; foreach(@info) { print $_; } my $href=\%subs; print Dumper $href; print Dumper @info;