use strict; use warnings; use Win32; use Win32::GuiTest qw(:ALL); my $calc = "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Accessories\\Calculator.lnk"; print "nothing else will happen until you close calc.exe\n"; system($calc); print "you closed calc.exe, moving on...\n"; print "using `start` to launch calc.exe will return once calc.exe is loaded\n"; system('start "" "' . $calc . '"'); print "\n\nyep, still running!\n\n";