Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.27;
Скачать: CL | DM;

Вниз

Как запретить запуск второй копии программы?   Найти похожие ветки 

 
Jiurasdfgfr   (2004-05-20 14:58) [0]

сабж.


 
Алхимик ©   (2004-05-20 15:16) [1]

Вариантов - туева хуча.
Например, при старте программы искать окно с таким же заголовком.
Если нашёл - считать что программа уже запущена и преравать её выполнение.
см местный FAQ.


 
Ega23 ©   (2004-05-20 15:16) [2]

ss:=ExtractFileName(paramstr(0) );
 hnd:=CreateMutex(nil, false, PChar(ss) );
 if GetLastError = ERROR_ALREADY_EXISTS then
 begin
  Beep(100,200); //MessageBeep ->in WinProcs
  bo:=ReleaseMutex(hnd);
  Halt(1);
 end;

Тут правда фишка, что если программу переименовать, то запустить можно. Но это сознательно было сделано.


 
WebErr ©   (2004-05-20 16:36) [3]


var
 P: PChar;
 S: String;
 W: HWND;
...
try
  GetMem(P, 256);
except
  ShowMessage("!");
  Exit;
end;
GetClassName(Handle, P, 255);
S := P;
W := FindWindow(0, 0);
while W <> 0 do
begin
  W := GetNextWindow(W, GW_HWNDNEXT);
  GetClassName(W, P, 255);
  if StrComp(PChar(S), P) = 0 then
    ShowMessage("Ура!");
end;
FreeMem(P);



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

Текущий архив: 2004.06.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.055 c
4-1084794195
Temucin
2004-05-17 15:43
2004.06.27
Мониторинг принтера


8-1080731765
Новик
2004-03-31 15:16
2004.06.27
3d график


14-1086372476
Murkt
2004-06-04 22:07
2004.06.27
CD vs lossless сжатие. И скажем нет Creative у.


9-1061483903
Kobik
2003-08-21 20:38
2004.06.27
Новая игра "Танки 2: Броня в огне"


1-1086937382
Mim1
2004-06-11 11:03
2004.06.27
пересобрать visualclx после применения UnofficialVisualCLX Pathch