我无法使用perl代码运行exe
。
my $XSD = "C:\\IParser\\Iparser\.exe --xsds \"$dir\\$out\_xsd\.xml\"";
system($XSD);
以上$xsd
运行在commend提示它将执行正常。当我运行perl源代码时,它将错误显示为
the handle is invalid
我不知道这背后的问题是什么。请帮忙。
答案 0 :(得分:0)
这可能是因为STDIN,STDOUT和STDERR(或其中任何一个)的闭合句柄。最有可能的情况是,如果您将其作为守护程序或服务运行。
在运行流程之前尝试打开标准句柄(假设您根据路径在窗口上):
open(STDIN, "<NUL");
open(STDOUT, ">NUL");
open(STDERR, ">NUL");