use warnings; use strict; use Win32::Process; use Win32; my $code = 'C:\\Perl Modules\\Win32\\ExitCode\\Debug\\FileClose.exe'; my $ProcessHandle; Win32::Process::Create ( $ProcessHandle, $code, qq("$code" 1289), # Note syntax because path has an embedded space 0, NORMAL_PRIORITY_CLASS, ".") || die "Oops: $^E"; $ProcessHandle->Wait(INFINITE); my $ExitCode; $ProcessHandle->GetExitCode($ExitCode); print "Exit code: $ExitCode\n";