MOJA PASJA - PROGRAMOWANIE
   Dzisiaj jest Niedziela, 23 kwietnia, 2017r. Ostatnia aktualzacja miała miejsce: 10 grudnia 2006r. Homepage

Programowanie: Artykuły * FAQ * Download * Komponenty * Książki WWW: Artykuły * Narzędzia * Kursy * Darmowe * FAQ * Skrypty * Ksiązki Off-Topic: Aforyzmy * Humor Inne: Forum * Wiki * Liczniki * Linki * Chat * Grafika * Video * Inne



Jak uniemożliwić uruchomienie dwóch kopii naszego programu ?
   Chyba każdy zetknął się z potrzebą zablokowania uruchomienia dwóch kopii programu. Potrzeba może wynikać np. z niemożliwości wykorzystania przez dwa programy naraz pewnych plików. Możliwości rozwiązania tego problemu jest przynajmniej kilka. Można np. pobierać listę uruchomionych aplikacji i sprawdzać czy wśród nich znajduje się i nasza, jednak najprostszym sposobem jest chyba utworzenie MUTEXa. Wygląda to tak:

   Unit1.cpp

  HANDLE Mutex = CreateMutex (NULL, true, "COMBOY-HTML");
  if (GetLastError() == ERROR_ALREADY_EXISTS)
  {
     Application->MessageBox("Co za dużo to niezdrowo ! \n Jeden COMBOY-HTML
     Ci wystarczy ;-]"
, "Info", MB_ICONINFORMATION);
     Application->Terminate();
  }



   Jest to kod żywcem wzięty z jednej z moich aplikacji. Najlepiej umieścić go w OnCreate głównej formy programu. Jak to działa ? Tworzymy MUTEXa, najlepiej o nazwie naszego programu, a jeżeli wystąpi błąd że jest on już utworzony, znaczy to, że jedna kopia jest już uruchomiona. MUTEX znika automatyczne po zakończeniu wykonywania się naszej aplikacji, tak więc nie musimy się już o niego martwić. Rozwiązenie proste i wygodne :)








Stronę przygotował: Kacper Cieśla (comboy). Wszelkie prawa zastrzeżone.
Reklama * Zgłoś błąd * Kontakt * Hosting * O stronie * Sponsoring
Czas generowania strony: 0s