|Don't ask to ask, just ask|
|( #3333=superdoc: print w/replies, xml )||Need Help??|
FYI, the following syntax:
... which is liberally peppered throughout your code is a great way to use global variables and get around the errors you'll encounter when running under use strict. You may want to instead declare your variables with my, i.e.
Regarding your waiting question, my assumption is that at the time your module PPSubs.pm is compiled, values like INFINITE and NORMAL_PRIORITY_CLASS (possibly among others) are undefined when you have the use PPSSubs.pm before the module(s) that define them, i.e. use Win32::Clipboard; and use Win32::Process;. One way around that is to put those two Win32 use lines inside your PPSSubs.pm module.
And the above anonymous monk is correct, use strict; and use warnings; in your module would help identify that issue.
In reply to Re: More on Win32::Process not waiting