Using pathnames in Windows is disturbingly annoying. While on its face, your code appears to have no issues, there could be any number of problems. For example, if Perl is installed with restricted priviledges, it may not have rights to invoke your shell (cmd.exe on Windows 2k/XP). However, if I were a betting man, I'd bet that something odd about your path spec is tripping things up.
The solution is one of two things. First, you could use File::Spec to build your path, thus basically eliminating the potential for path-related problems. That's usually a good idea even if you aren't having problems.
Or, because you say I need to use the batch file because the program it's running assumes /program files/agent is the working dir, you could simply use chdir. Like so:
my $real_prog = 'agent.exe'; my $path = File::Spec->canonpath('c:\program files\agent'); chdir ($path); system ($real_prog) if (-f $real_prog);
radiantmatrix
require General::Disclaimer;
s//2fde04abe76c036c9074586c1/; while(m/(.)/g){print substr(' ,JPacehklnorstu',hex($1),1)}
In reply to Re: system command can't spawn cmd.exe
by radiantmatrix
in thread system command can't spawn cmd.exe
by cormanaz
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |