this may be overkill, but i found a way, with tye's help, to get STDERR, STDOUT, and the exit value back from an external program. it avoids the piped open, and uses IPC::Open3 instead. you may find this link useful.
~Particle
Comment on Re: passing values to another perl program