Вниз
Скачать: CL | DM;

Запуск 1-ой копии проги!   Найти похожие ветки 

 
serko ©   (2006-06-16 01:03) [0]

Ребят расскажите как правильно сделать чтобы прога была запущена только в одном экземляре!
Я вот пробовал делать так:
добали в *.dpr

firstcopy:=findwindow("Tform1","Прога");
 if firstcopy <>0 then
 begin
      SetForegroundWindow(FirstCopy);
      Application.terminate;
 end;

Но так получается что если у меня окрыт проект в Delphi то при компиляции прога сразу же запускается! А не хотелось бы этого, потому как не удобно очень!

Как сделать правильно? Примерчик в студию....


 
Asail   (2006-06-16 01:10) [1]

Можно серез мутекс, например так:

function Check: boolean;
var
 HM: THandle;
begin
 HM := OpenMutex(MUTEX_ALL_ACCESS, false, "MyMutex");
 Result := (HM <> 0);
 if HM = 0 then HM := CreateMutex(nil, false, "MyMutex");
end;

begin
 if Check then Exit;
 Application.Initialize;
 . . .


Тока я чего-то не понял насчет автоматического запуска при компиляции...
Может, ты Run жмешь?


 
serko ©   (2006-06-16 01:16) [2]

Sorry уже нашел!

http://delphimaster.net/view/2-1150369563/


> то при компиляции прога сразу же запускается!


Опечаточка! Жму Run, а прога ЗАКРЫВАЕТСЯ


 
Zhekacoder   (2006-06-20 18:42) [3]

Надо запустить ее 1 раз


 
Lex_! ©   (2006-06-21 05:08) [4]


> Опечаточка! Жму Run, а прога ЗАКРЫВАЕТСЯ

Так это ... где обработчик то?... Нужно ДО application.run
Иначе у тебя форма создается, и соответственно программа ее находит и закрывается...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.031 c
15-1149824336
inew
2006-06-09 07:38
2006.07.09
Как перенести настройки пользователя.


2-1150379275
XTD
2006-06-15 17:47
2006.07.09
Знает ли кто прог. которая следит за изменениями в регистре?


1-1148904114
Steplerr
2006-05-29 16:01
2006.07.09
Чтение с консоли


1-1147960648
MegaVolt
2006-05-18 17:57
2006.07.09
При разворачивании формы на весь экран ищезает прогрессбар из...


15-1150009714
TUser
2006-06-11 11:08
2006.07.09
Эта странная Малайзия ...




   Наверх