Вниз
Скачать: 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.026 c
15-1149953433
to4no4eshka
2006-06-10 19:30
2006.07.09
оцените макет


15-1149807962
Неизвестный!!!
2006-06-09 03:06
2006.07.09
Оцените мой сайт!


2-1150472512
Neo Trinitron
2006-06-16 19:41
2006.07.09
CreateProcess запуск cmd /c ...


15-1150172793
fun.exe
2006-06-13 08:26
2006.07.09
SQL в Delphi


2-1150487677
Float
2006-06-16 23:54
2006.07.09
Включение компа




   Наверх