Similar to this question, but in Delphi:
http://stackoverflow.com/questions/51148/how-do-i-find-out-if-a-process-is-already-running-using-c
I have an updater program, I want it to check the program its about to update is not currently running, preferably it would check all users, not just current user.