Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.01.2022, 14:05   #1
stalkernet
Пользователь
 
Регистрация: 28.02.2009
Сообщений: 42
По умолчанию Мониторинг чужого окна написаного на FMX

Всем доброго дня и с прошедшими!

Ситуация - ни одно доброе дело не должно остатся безнаказаным.
Отбросив эмоции - задача такая - есть прибор и две программы. Одна управляет калибратором. другая снимает показания с прибора. это четыре формы. Нужно в некоторых контролах на формах задавать значения, а с определенных контролов - снимать. Все свести в журнал испытаний и записать файл.
По нормальному сделать не получится. Ввиду особой "гинеальности" (между е и а втавить т) манагера - в договое поставки не указал что программый продукт включает программный код. Тоесть исходников нет.

ну бог сним - ничего военного. Нашел HWND главного окна, потом дочение, отобрал нукжные и вперед через SEND/POST/GET MESSAGE/TEXT/KEY оправляешь и складываешь как надо. не первый раз делал. с имитатором проблемм не возникло. Написан на VCL.

а вот с регистратором - картина Репина "Приплыли". Регитратор написан на FMX. естественно какойто HWND кроме главного окна получить - пока не понял.

Понимаю что проще с нуля написать по новому ТЗ. но начальство .........

Теперь сам вопрос: можно ли из другого приложения на форме FMX получить доступ к EDIT (Read/Write) и PostMessage к Button. Если да то как? Дедушка гугль дает примеры на VCL.

Вобщем буду рад любой мысли/подсказке/сцылке.
stalkernet вне форума Ответить с цитированием
Старый 14.01.2022, 11:46   #2
stalkernet
Пользователь
 
Регистрация: 28.02.2009
Сообщений: 42
По умолчанию

Да ладно - 300 просмотров и неукого ни одной мысли???
stalkernet вне форума Ответить с цитированием
Старый 14.01.2022, 12:38   #3
stalkernet
Пользователь
 
Регистрация: 28.02.2009
Сообщений: 42
По умолчанию

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

1 class(TForm) - просто дань старому Delphu и то по названию.
2 FMTForm основная форма принимающая message от системы и преобразующая во внутренний формат FMX.


Вобщем нужно переходить от повехносных к глубоким проктологическим мсследованиям FMX.Forms
Для начала написать логер регестрирующий message которые приходят и откуда к форме а также какие и куда исходят.

Пока найденое в инете - из серии "Ооо!!! А Мюсье знает толк в извращениях...".
У самого такое - связка скиншоты через интервалы -> FineReader -> MSOffice.
stalkernet вне форума Ответить с цитированием
Старый 07.02.2022, 12:25   #4
stalkernet
Пользователь
 
Регистрация: 28.02.2009
Сообщений: 42
По умолчанию

Всем доброго.

Вобщем в связи с необходимостью переоформления ТУ на прибор по новым требованиям, было принято решене переписать программу калибровки и поверки с нуля. заодно и улучшить параметры и точность.
так что вопрос перерос из разряда актуального в разряд - любопытного.

И пока метрология пержевывает почти 150 листов написанных на языке нормативных документов - было найдено и опробовано. Но после 2 недель бумаго-тврочества необесудбте в краткости....

найдено
SPYSTUDIO - URL найдете.
программа интересная но написана в стиле "всепогодный истребитель", так-что хелп такой большой - что его просто нет.

https://github.com/nektra/Deviare-InProc/

Проект на основе которого сделан spystudio. собрать удалось только на VS 2019. (Реализация различных HOOK)

https://github.com/freeonterminate/d...5f5a71/FMXForm

Интересная реализация системного хука от братьев наших меньших. Проверено - работает.

теперь собственно тем кто придпочитает стиль - "Необходимо и достаточо".

нужен логер который
0 ищет окно и дочерние потоки (FindWindow)
1 вешает хук на каждый поток(HWND) относящийся к ProcessID
2 разбирает по hwnd кому и какое message пришло. с меткой синхроизаци.
3 простенький редактор для отсылки message по HWND, с возможность вручную собрать message (POST/SEND/GET тип message - клав/мышь/система ну и параметры)

Делать буду - но вот вопрос когда......
stalkernet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обновление чужого окна WorldMaster Win Api 7 06.04.2017 17:43
Заменить содержимое чужого окна jhonyxakep Win Api 1 10.05.2011 01:45
Сворачивание чужого окна artemavd Общие вопросы Delphi 2 27.04.2010 07:45
VirtualStringTree чужого окна akaTemporary Общие вопросы Delphi 0 29.01.2010 14:32
Запрет закрытия чужого окна DV-Karpov Общие вопросы Delphi 2 20.09.2009 10:26