in reply to While count ---don't see it

This:

foreach $process(@processlist){
is clobbering this $process:
$process = new Win32::IProcess || die "Unable to create new process!: +$!\n";
One more case for $_, which means Thisun.
for (@processlist){ $pid = $_ ->{ProcessId}; #...
use strict; would not have prevented this, but you would be more likely to pay attention to scope.

You don't need to redefine your formats every time through the loop.

After Compline,
Zaxo