Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запуск программы в одном экземпляре [D5, XP]


ВоваВова ©   (2005-11-10 15:07:00) 

Добрый день! Подскажите пожалуйста, как корректно проверить - запущена уже моя программа или нет (необходимо, чтобы работал только один ее экземпляр). Спасибо.


oleg_v   (2005-11-10 15:25:00) [1]

program Project1;

uses
 Forms, Windows,
 Unit1 in 'Unit1.pas' {Form1},
 
{$R *.res}

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

begin
 if Check then
   Exit;
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;
end.


Наверх

Титульная страница Поиск, карта сайта Написать письмо