#! perl -slw use strict; use Win32::Socketpair qw[ winopen2_5 ]; ( $pid, $sock ) = winopen2_5( 'perl.exe', q[-E"say 'hello'; warn; die;"] ); shutdown $sock, 1; print while <$sock>; close $sock; __END__ C:\test>winopen2_5 Warning: something's wrong at -e line 1. Died at -e line 1. hello