Как запретить запускать вторую копию программы? (Delphi)
Ниже приведен код запрета запуска второго копии программы, написанной на языке программирования Delphi.
Код выполняется сразу при запуске программы.
Весь алгоритм сводится к тому найти все оконные приложения в системе и сравнить со своим заголовком. В случае если таковой имеется — то отменить запуск.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | Procedure TForm1.FormCreate(SEnder: TObject); Var ExtEndedStyle:dword; Wnd : hWnd; buff : Array[0.. 127] of Char; Begin Wnd := GetWindow(Handle, gw_HWndFirst); While Wnd <> 0 DO Begin If (Wnd <> Application.Handle) and (GetWindow(Wnd, gw_Owner) = 0) Then Begin GetWindowText (Wnd, buff, sizeof (buff )); If StrPas (buff) = Application.Title Then Begin Halt; End; End; Wnd := GetWindow (Wnd, gw_hWndNext); End; End; |
—
Заказать печати можно здесь — pechati-1.ru/pechati_i_shtampi/novye/. Одно- и двухцветные печати различных форм по низким ценам.
Понравилась статья? Жми: | Поделиться в соц. сетях |
Не самый оптимальный из нескольких способов.