in reply to Re^3: access to ERRORLEVEL on Win32
in thread access to ERRORLEVEL on Win32

Have you considered an interface like strace and (the unix) time?
perl vcproj_filter.pl make all >output.txt 2>&1

To launch the child, you'd use

system { $ARGV[0] } @ARGV

The down side of this method is that the output of make and vcproj_filter will get mixed together.