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

Перехват второй копии и запуск функции.   Найти похожие ветки 

← →
-Alex-   (2002-10-26 17:10) [0]

Привет.

Моя программа создает ярлык в каталоге C:\WINDOWS\SendTo (Пункт меню "Отправить"). Когда я щелкаю по файлу правой кнопкой мыши, выбираю в меню "Отправить" свой ярлык, моя программа помещает путь к файлу в компонент Edit1, а далее запускается определенная функция, которая проводит над файлом какие-то операции. Всё это работает, но возникла трудность, когда я начал отслеживать запуск второй копии своей программы, перепробывал разные коды этой слежки, но выйти из сложной ситуации не могу. Одним предложением: мне нужно -

- Если программа запущена через ярлык в пункте "Отправить", активировать уже запущенную копию программы (если программа уже запущена) и запустить определенную функцию.

Помогите это реализовать. Вот код, которым я отслежую запуск второй копии программы:

procedure TForm1.FormCreate(Sender: TObject);
var
h : hWnd;
buff : ARRAY[0.. 127] OF Char;
begin
h := GetWindow(Handle, gw_HWndFirst);
while h <> 0 do
begin
if (h <> Application.Handle) AND (GetWindow(h, gw_Owner) = 0) then
begin GetWindowText (h, buff, sizeof (buff ));
if StrPas (buff) = Application.Title then
begin
SetForegroundWindow(h);
ShowWindow(h,SW_SHOWNORMAL);
Halt;
end;
end;
h := GetWindow(h, gw_hWndNext);
end;
end;


← →
Юрий Зотов ©   (2002-10-26 21:19) [1]

http://www.delphikingdom.com/helloworld/samples_win.htm

А по окну не советую - может оказаться слишком ненадежно.




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

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



Память: 0.45 MB
Время: 0.016 c
1-21489
STANT
2002-10-28 18:07
2002.11.07
Очень сложный вопрос...


1-21624
Юлия
2002-10-26 17:51
2002.11.07
Изменение цвета ячеек grid-а


3-21425
EOL
2002-10-18 17:10
2002.11.07
ADO Неудача при попытке очистить базу


3-21409
Beglec
2002-10-18 14:38
2002.11.07
простенький вопрос, но больно мучительный для меня


3-21430
shulc
2002-10-19 17:26
2002.11.07
Для тех, кто работает (ал) с PrTxeport




   Наверх