in reply to Program hanging up

There's a couple things you can do with Win32::Process, like the "wait" method to wait for it before trying to send it. But rather than that, you should think about using Archive::Zip instead.

Hope this helps
Rich