in reply to PERL stopped working for built-in DOS functions under XP

Is that really your code? I notice you print out "/n" but you didn't show it in your output.

What do $! and $? contain after each command? Actually, I'd rather see the output of perl -le"system 'echo dog'; print qq{$!/$?}"

Are you running from the script from a console prompt?

What's the output of perl -v?