从perl主脚本分离.exe

时间:2011-02-27 22:14:57

标签: perl

我被困在这里.. :(我正在尝试从Perl脚本执行temp.exe文件。

我尝试使用以下内容:

1)

         $pid=  open( CMD, "| exp.exe  > C:\exp_out.txt" );
         print CMD "arg1\n";
         print CMD "arg2\n";
         print CMD "arg3\n";

现在这个exp.exe一直在后台运行,没有任何问题。但如果我想关闭它并再次启动它会启动exp.exe但不提供exp.exe的输入参数

闭合:

         system("taskkill /F /T /pid $pid");` 

现在这是2个子程序打开和关闭的一部分......

我也试过Open2; Win32 :: Process; Open2卡在exp.exe和Win32 :: Process我不知道如何传递多个参数。

1 个答案:

答案 0 :(得分:1)

尝试在命令行中传递参数。打印到CMD就像打开管道后键入文本一样。如果这是您想要的,那么您的程序exp.exe需要期望来自STDIN的输入

$pid = open(CMD, "| exp.exe arg1 arg2 arg3 > file.txt");
#do your work here
close(CMD)