Wracając zatem do tematu, jeśli nie znasz sposobu zabezpieczenia programu to pozostaje zgadywanie, a im program jest większy, tym trudniej.
Najczęściej spotykanymi metodami, stosowanymi przez programy są użycie mutex'ów lub pamięci współdzielonej między procesami - proponowałbym od wyszukania funkcji powiązanej z tymi zagadnieniami. Gniazda stosowane są rzadziej, ale jeśli sama aplikacja działa sieciowo, wykonanie zabezpieczenia w ten sposób jest banalne - wystarczy spróbować uruchomić serwer na określonym porcie - nie da się uruchomić na jednym porcie dwóch gniazd nasłuchujących.
A tak na koniec: pamiętaj, że odświeżanie własnych tematów na forum jest jak powiedzenie innym forumowiczom: 'spadajcie, mój post jest ważniejszy od waszych' :/ Tak się nie robi w społeczności, od której właśnie samemu potrzebujesz pomocy; tym bardziej dwukrotnie.. Nie ładnie.