Win32::Process::Create($proc, "c:\foo.exe", "foo.exe arg1 arg2 arg3", 0, $priority, ".") || die "can't create process, ". Win32::FormatMessage( Win32::GetLastError()); my $ret= $proc->Wait($timeoutsecs * 1000); if (! $ret ) { # Still running, kill it. $proc->Kill(0); }