Possible Duplicates:
What is the correct way to create a single instance application?
Prevent multiple instances of a given app in .NET?
Do I check whether another process with the same name exists? (What if the user doesn’t have permission to do that?)
Write a file to disk and delete it before exiting? (what about abnormal termination?)
What would be a best practice to do this?
You can use a Mutex.