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

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

 
Руслана   (2005-01-20 13:12) [0]

Использую следуюший код для определения запуска второй копии своего приложения:

var
UniqueMapping:THandle;
h:hWnd;
begin
 UniqueMapping:= CreateFileMapping($ffffffff, nil, PAGE_READONLY, 0, 32, "MyMap");
if UniqueMapping = 0 then
          begin
 ShowMessage("Ошибка выделения памяти");
 Halt;
   end
else if GetLastError = ERROR_ALREADY_EXISTS then
   begin
 ShowMessage("Программа уже запущена");    
  Halt;
   end;
 Application.Initialize;
 Application.CreateForm(TMainForm, MainForm);
 Application.CreateForm(TDataModule1, DataModule1);
 Application.CreateForm(TFormInfo, FormInfo);
 Application.CreateForm(TFormOption, FormOption);
 Application.Run;

Программа большую часть висит в трее.

Как мне вызвать свою программу из трея при попытке запуска второй копии приложения? Наподобие того как это делает Total Commander например


 
Virgo_Style ©   (2005-01-20 13:32) [1]

FindWindow + SendMessage ?

А в обработчике сообщения выполнять действия, "вызывающие программу из трея" :)

Что касается SendMessage - надо подумать, какое сообщение использовать


 
ALS ©   (2005-01-20 14:08) [2]

http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988619824&n=15


 
Руслана   (2005-01-20 18:35) [3]

Что-то не получается - программа из трея не вылазит.



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

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



Память: 0.45 MB
Время: 0.023 c
14-1106063385
Cosinus
2005-01-18 18:49
2005.02.06
Каков механизм включения ScreenSaver-а?


1-1106488512
ninja
2005-01-23 16:55
2005.02.06
ширина


9-1099606923
wiz
2004-11-05 01:22
2005.02.06
Rust. Внешний вид игрового GUI


8-1098731535
LicProd
2004-10-25 23:12
2005.02.06
Организация массива точек


4-1102871909
Дядя
2004-12-12 20:18
2005.02.06
Вольтметр через USB




   Наверх