Питання # 4 483 …про розгорнути програму з трею … (Програмування за допомогою API)
Спільнота програмістів Спілкування, допомога, обмін досвідом
Delphi.int.ru Expert
Інші розділи порталу
Перехід до питання:
Статистика за сьогодні:
Найкращі експерти
Питання # 4483
Вітаю, шановні експерти! Не підкажете як програмно розгорнути програму з трею?
Міні-форум питання
Сторінки: [ 1] [ 2] [Наступна » ]
А додаток свій чи чужий?
Соррі. Чуже звичайно. )))
Ну, тоді потрібно знайти хендл головного вікна цієї програми та надіслати йому WM_SHOWWINDOW або викликати ShowWindow() з потрібними прапорами.
А як знайти хендл головного вікна? Хендл ToolbarWindow32 я можу знайти, а далі не зрозумію чого робити. ((((
Цитата (umka_max ):
А ще цікаво. Якщо програма не має головного вікна, але є PopupMenu. Потрібно програмно натиснути пункт меню "Про програму" програми, що висить у треї. Як зробити?
У програмі, що висить у треї, завжди є вікно, щоб приймати та обробляти системні віконні повідомлення. Це вікно може бути невидимим та/або мати нульові розміри. Щоб натиснути на пункт меню, потрібно надіслати вікно повідомлення WM_COMMAND з номером цього пункту меню. Цей номер можна дізнатися, поколупавшись в ресурсах проги.
Можу надіслати вихідник такої програми, SpecChar називається. Її навіть у треї не видно, але при натисканні Win+C вилазить меню над активною програмою, щоб користувач міг вставити неклавіатурний знак в будь-яке поле редагування. Дуже давно їй користуюсь.
А за допомогою чого можна дізнатися номер пункту меню? WinSpy++ підійде?
Ну якщо можна, то надішліть вихідний SpecChar.
Цитата (umka_max ):
Ну підкажіть чим можна "поколупатися" в ресурсах проги. )))
Ну, наприклад, є прога Resource hacker. Її має вистачити.
Блін, ну ніфіга не виходить. А ви не могли б для прикладу навести шматочок коду, де програмно відкривається PopupMenu аськи з трею. ))) Дуже треба. Дякую.
Цитата (umka_max ):
Ну я QIP і мав на увазі. )))
Цитата (umka_max ):
Цитата (umka_max ):
Ну QIP це для прикладу. А насправді є додаток без головного вікна, що висить у треї. У нього є меню, меню пункт "Про програму". Потрібно отримати інформацію про програму тобто. натиснути пункт меню та зробити скріншот. Все потрібно зробити з моєї програми.
Навіщо все це, га?
Потрібно працювати. Для автоматичного збору інформації про поточні версії ПЗ. Таке ось безглузде завдання, але зробити треба.
Автоматичний збір робиться негаразд. Усі нормальні програми мають ресурс "версія" і він заповнюється програмістом. Так ось, зчитуємо зі списку завдань ім'я файлу і шлях до нього, а потім відомими функціями забираємо версію продукту. І все! Не потрібно городити місто кліками мишки в треї, витягуванням вікон та подібним.
Цитата (Вадим К ):
Сторінки: [ 1] [ 2] [Наступна » ]