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

Вторая копия программы   Найти похожие ветки 

← →
Soft ©   (2002-09-12 18:47) [0]

Привет народ.

Не подскажете как определить запусчена ли уже определенная программа. FindWindow плохой способ, не пойдет. Может через сокеты. Или нет в Винде каких-то семафоров?


← →
MBo ©   (2002-09-12 18:50) [1]

CreateMutex


← →
RV ©   (2002-09-13 09:18) [2]

program SelfCheck;

uses

Windows,
Forms,
Unit1 in "Unit1.pas" {Form1};

const

AtStr="MyProgram";

function CheckThis : boolean;
var

Atom: THandle;
begin

Atom:= GlobalFindAtom(AtStr);
Result:= Atom <> 0;
if not result
then GlobalAddAtom(AtStr);
end;

begin

if not CheckThis
then begin // Запуск программмы
Application.Initialize;
Application.CreateForm(TForm1,Form1);
Application.Run;
GlobalDeleteAtom(GlobalFindAtom(AtStr)); // !!!
end
else begin
MessageBox(0,"Нельзя запустить две копии","Моя программа",0);
end;
end.

Элегантно и работает



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

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



Память: 0.45 MB
Время: 0.012 c
7-46166
XED
2002-09-13 14:21
2002.11.14
HDD


14-46104
blackweber
2002-10-26 22:28
2002.11.14
Проверьте живы ли Вы?


14-46078
Beginner-Designer
2002-10-24 16:31
2002.11.14
FAQ по прошивкам телефонов Nokia


3-45787
max2057
2002-10-27 11:25
2002.11.14
Аналог PL/SQL в Interbase и MS SQL-сервере


1-45913
Ramzes
2002-11-03 18:06
2002.11.14
Новые переменные




   Наверх