Вниз
Скачать: 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.024 c
2-1150718807
Neket
2006-06-19 16:06
2006.07.09
Exel vs Delphi


6-1141079808
Кефир87
2006-02-28 01:36
2006.07.09
HTTP метод POST принцип отправки данных


15-1150118015
Pashaaa
2006-06-12 17:13
2006.07.09
Blob Поля


2-1150706401
Уля
2006-06-19 12:40
2006.07.09
Работа с Excel


15-1149949840
tesseract
2006-06-10 18:30
2006.07.09
процессорные байки.




   Наверх