Selam…
Bir önceki yazımda, bir Windows Forms uygulamasının, birden fazla çalışmasını istemediğimiz durumda ne yapabileceğimize dair bir çözüm ortaya atmıştık. Bu çözüm de, kaba hatları ile şöyleydi; uygulama çalışırken, aynı isimde başka process’ler olup olmadığına bakıyor, varsa uygulamayı açmıyordu. Fakat bu çözümde eksik bir taraf var. O da şu; kullanıcı .exe dosyasının adını değiştirirse ne olacak? O zaman, geriye tek bir çözüm kalıyor. Dosya adına bakarak hareket etmek yerine uygyulamanın hangi Thread üzerinde yer aldığına bakmak.
Eminim, son kararım. Kesin çözüm Mutex:
Program.cs içindeki kod aşağıdaki gibi: