Форум: "Начинающим";
Текущий архив: 2006.07.02;
Скачать: [xml.tar.bz2];
ВнизКак запретить запускать повторно уже запущенную программу? Найти похожие ветки
← →
ttt_111 (2006-06-15 15:06) [0]Как запретить запускать повторно уже запущенную программу?
← →
DrPass © (2006-06-15 15:10) [1]Создавать какой-либо глобальный объект (мютекс, memory-mapped файл, окно с уникальным именем класса или еще что фантазия родит), и при старте программы искать этот объект. Если есть - уже копия запущена, тогда сразу завершать работу. В любом ФАКе по программированию есть куча примеров на эту тему
← →
dolmat (2006-06-15 15:20) [2]procedure TForm1.FormCreate(Sender: TObject);
VAR 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 Halt;
END;
Wnd := GetWindow (Wnd, gw_hWndNext);
END;
end;
← →
ttt_111 (2006-06-15 15:37) [3]Спасибо за помощь.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.07.02;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.01 c