I had this issue with some perl scripts I had inherited at work (activeperl 5.6 on server 2003). It turned out to be the way the script was being called from the command line (scheduled .cmd file).
e.g. c:\scripts>script.pl (resulted in the can't spawn message)
however specifying perl before calling the script which is best practice anyway allowed it to work fine:
c:\scripts>PERL script.pl (allows the command line call from within the perl script to work fine).