The problem with -q is zip -FF just blows on through and doesn't repair my sample file with the pseudo split archive structure. So I can't use quiet mode without sacrificing what I'm trying to do.
OK so here is my IPC::Open3 statements so far:
use IPC::Open3;
my ($pid,$zipin, $zipout, $ziperr);
$pid = open3 ($zipin, $zipout, $ziperr, system("cmd /c zip.exe -FF \"$
+mainfilepath\" --out \"$ziprepairedwordfilepath\""));
wait;
$zipin = print "y\r\n";
Any suggestion on how to construct wait or waitpid phrases? Right now whatever I do with wait or waitpid, printing 'y' into input, occurs after I enter 'y' by hand. $zipin never writes to the prompt.
Update
I'm looking of zip's C++ code in Visual Studio to see if I can compile my own version that always accepts that the archive is one disk. |