I'd suggest looking at Win32::Process::Info. Start the process and use W::P::I to monitor it's process utilisation . If it fails to change over a period of a few seconds, it is either waiting for input or is hung. Your program logic should allow you to distinguish the difference.
See Re: Win32: Multiple processes with the same name and Re^3: Win32: Multiple processes with the same name for some sample code.
In reply to Re: Detecting hung conditions in win32
by BrowserUk
in thread Detecting hung conditions in win32
by Zadeh
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |