如何在Windows XP上使用Perl运行可执行文件?

qui*_*kxi 2 perl executable

如何使用perl运行可执行文件?

例如,我想运行一个普通的notepad.exe.我怎么能实现这个目标?

这就是我所拥有的:

my @args = system("notepad.exe");
system(@args) == 0  or die "system @args failed: $?";
Run Code Online (Sandbox Code Playgroud)

但它返回:

Can't spawn "cmd.exe": No such file or directory blah blah blah.

我错过了什么?

gam*_*men 5

你的代码似乎有点困惑.您可能想要的是类似的东西

my $cmd = "notepad.exe";
my @args = ($cmd, "readme.txt");

system(@args);

if($? == -1) {
    die "system @args failed: $?";
}
Run Code Online (Sandbox Code Playgroud)

system返回单个值,而不是数组.有关perldoc -f system详细说明,请参阅.

perlmonks上的这个主题讨论了你提出的一些不同解决方案所带来的错误.

这个答案是我原来评论的延伸.对不起,如果这是多余的.