use Win32::Process; use Win32; my $ProcessObj; my $worked = Win32::Process::Create ( $ProcessObj, # Process object "C:\\myprog", # full path name of child program "C:\\myprog arg", # command line 0, # inherit handles boolean NORMAL_PRIORITY_CLASS, # Creation flags "."); # working directory of child die 'Error: '.Win32::GetLastError() unless $worked; # Do some stuff $ProcessObj->Wait(INFINITE); # Wait for completion my $ExitCode; $ProcessObj->GetExitCode($ExitCode) # Get child result