Текущий архив: 2005.10.02;
Скачать: CL | DM;
Вниз
Найти хэндл кнопки программы свернутой в трей ? Найти похожие ветки
← →
slaga © (2005-08-08 18:07) [0]Добрый день у меня такой вопрос, мне нужно отследить момент запуска второй копии программы и кроме этого запретить запуск второй копии и в момент закрытия второй копии программы было бы неплохо сделать первую копию программы активной.
Первый пункт я уже сделал, осталось сделаь активной первую копию программы, но тут такая сложность, программы свернута в трей, я хочу найти хендл пункта меню "Открыть", которому я пошлю сообщение типа:SendMessage(Hndl, BM_CLICK, 0,0);
Но проблема в том что я незнаю как найти хендл этого пункта меню.
Подскажите пожалуйста.
← →
Fay © (2005-08-08 18:15) [1]2 slaga © (08.08.05 18:07)
А вот запущенная прога знает Handle своей кнопки.
Отправь broadcast message, поймаешь - делай что хотел.Applications that need to communicate using HWND_BROADCAST should use the RegisterWindowMessage function to obtain a unique message for inter-application communication.
← →
slaga © (2005-08-08 18:20) [2]А как ловить ?
← →
slaga © (2005-08-08 18:23) [3]Дополнительная информация:
Я когда определяю повторность запускаемой проги я уже имею дескрипшен главного окна, может используя это можно найти дескрипшен кнопки ?
← →
Fay © (2005-08-08 18:25) [4]2 slaga © (08.08.05 18:23) [3]
>> я уже имею дескрипшен главного окна
FindWindow? Шли тогда напрямую.
Ловить можно в [Additioonal]->ApplicationEvents
← →
slaga © (2005-08-08 18:28) [5]неполучается, я делаю вот так:
if FindWindow("TMenuItem", "Открыть") <> 0 then
ShowMessage("Нашел!");
не находит такого окна :(
← →
Fay © (2005-08-08 18:43) [6]slaga © (08.08.05 18:28) [5]
посмотри почту
← →
slaga © (2005-08-08 18:58) [7]Сейчас гляну, спасибо.
Страницы: 1 вся ветка
Текущий архив: 2005.10.02;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.048 c