in reply to Is the program there? (W32)
you could use Proc::PID_File to avoid running multiple instances of your script with a few lines of code.
but this does not work if someone starts the program in an alternate way.
googeling gave this link