Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Как не допустить запуск второй копии программы 9

Delphi , Программа и Интерфейс , Приложение своё

Как не допустить запуск второй копии программы 9

Можно ли программу, написанную под Windоws, называть подоконником?


var
  MutexHandle: THandle;
var
  UniqueKey: string;

function IsNextInstance: BOOLEAN;
begin

  Result := FALSE;

  MutexHandle := 0;
  MutexHandle := CREATEMUTEX(nil, TRUE, UniqueKey);
  if MutexHandle <> 0 then
  begin
    if GetLastError = ERROR_ALREADY_EXISTS then
    begin
      Result := TRUE;
      CLOSEHANDLE(MutexHandle);
      MutexHandle := 0;
    end;
  end;
end;

begin

  CmdShow := SW_HIDE;
  MessageId := RegisterWindowMessage(zAppName);
  Application.Initialize;
  if IsNextInstance then
    PostMessage(HWND_BROADCAST, MessageId, 0, 0)
  else
  begin
    Application.ShowMainForm := FALSE;
    Application.CreateForm(TMainForm, MainForm);
    MainForm.StartTimer.Enabled := TRUE;
    Application.Run;
  end;
  if MutexHandle <> 0 then
    CLOSEHANDLE(MutexHandle);
end.

В MainForm вам необходимо вставить обработчик внутреннего сообщения


procedure TMainForm.OnAppMessage(var M: TMSG; var Ret: BOOLEAN);
begin
  if M.Message = MessageId then
  begin
    Ret := TRUE;
    // Поместить окно наверх !!!!!!!!
  end;
end;

initialization
  ShowWindow(Application.Handle, SW_Hide);
end.

Статья Как не допустить запуск второй копии программы 9 раздела Программа и Интерфейс Приложение своё может быть полезна для разработчиков на Delphi и FreePascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Приложение своё ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100
28.03.2024 21:06:36/0.036323070526123/2