Автор | Сообщение |
|
| постоянный участник
|
Пост N: 4011
Зарегистрирован: 12.09.06
|
|
Отправлено: 02.03.15 13:34. Заголовок: Как считать данные в GET из другой программы ?
|
|
|
Новых ответов нет
[см. все]
|
|
|
| постоянный участник
|
Пост N: 486
Зарегистрирован: 17.02.12
|
|
Отправлено: 02.03.15 14:07. Заголовок: Andrey пишет:Как это..
Andrey пишет: цитата: | Как это сделать на МиниГуи ? |
| если обе проги MiniGui и твои, то обмен можно организовать по посылке WM_COPYDATA (запрос\ответ). если другая прога, то можно пойти по пути как в AutoIt3, Au3Info.exe позволяет снять данные с конролов проги (если разберет их) и используя их (данные) в скрипрте AutoIt3 организовать доступ к контролам (чтение\запись), надо знать как повторить это на winapi, для использования в hb
|
|
|
|
| |
Пост N: 292
Зарегистрирован: 17.06.10
|
|
Отправлено: 02.03.15 14:09. Заголовок: Вероятно - getwindow..
Вероятно - getwindowtext(hEdt) Если не получится, то через SendMessage
|
|
|
|
| постоянный участник
|
Пост N: 4013
Зарегистрирован: 12.09.06
|
|
Отправлено: 02.03.15 14:13. Заголовок: fil пишет: Вероятно..
fil пишет: цитата: | Вероятно - getwindowtext(hEdt) Если не получится, то через SendMessage |
| А как конкретно ? hWnd := FindWindowEx(,,, "Ammyy Admin v3.5 - Free" ) // .......... А дальше как ?
|
|
|
|
| |
Пост N: 293
Зарегистрирован: 17.06.10
|
|
Отправлено: 02.03.15 14:29. Заголовок: Ну ты же наше хендл ..
Ну ты же наше хендл этого get'a hWnd := FindWindowEx(,,, "Ammyy Admin v3.5 - Free" ) далее tt:=getwindowtext(hEdt) (ежели эта ф-я есть в МиниГуи) Иначе смотри в гугле как это делается через по сылку контролу SendMessage(hWnd, WM_GETTEXT
|
|
|
|
| |
Пост N: 4570
Зарегистрирован: 17.05.05
|
|
Отправлено: 02.03.15 14:46. Заголовок: Andrey Примеры что ..
Andrey Примеры что ли глянь MiniGUI\SAMPLES\Advanced\ExternalApp\ MiniGUI\SAMPLES\Advanced\ExternalApp_2\
|
|
|
|
| постоянный участник
|
Пост N: 4015
Зарегистрирован: 12.09.06
|
|
Отправлено: 02.03.15 14:48. Заголовок: Dima пишет: Примеры..
Dima пишет: Спасибо ! То что нужно !
|
|
|
|
| постоянный участник
|
Пост N: 4017
Зарегистрирован: 12.09.06
|
|
Отправлено: 02.03.15 16:10. Заголовок: Не совсем то. Не пон..
Не совсем то. Не понятно как считать с окна. Нашёл вот тему: http://www.transl-gunsmoker.ru/2008/11/getwindowtext.html И пусть у нас есть процесс Б, у которого есть описатель окна (hwnd = MyControl.Handle), созданного процессом А (не важно, как он его получил): var szBuf: array[0..79] of Char; ... GetWindowText(hwnd, szBuf, 80); Этот код вернёт szBuf = 'Frappy', потому что это именно та строка, которая хранится в "особом месте". Однако: SendMessage(hwnd, WM_GETTEXT, 80, LPARAM(@szBuf)); Вернёт szBuf = 'Booga!'. Как понять LPARAM(@szBuf) ? Какой синтаксис для МиниГуи нужен ?
|
|
|
|
| |
Пост N: 4571
Зарегистрирован: 17.05.05
|
|
Отправлено: 02.03.15 16:14. Заголовок: Andrey пишет: Не со..
Andrey пишет: цитата: | Не совсем то. Не понятно как считать с окна. |
| Я конечно не спец но кажется мне что надо обойти все контролы нужного окна. Попробуй SendMessage(hwnd,WM_GETTEXT,250,@_string)
|
|
|
|
| |
Пост N: 294
Зарегистрирован: 17.06.10
|
|
Отправлено: 02.03.15 16:42. Заголовок: Сначала находишь окн..
Сначала находишь окно родителя hWnd:=FindWindow( Затем в нем FindWindowEx(hWnd перебираешь
|
|
|
|
| |
Пост N: 4572
Зарегистрирован: 17.05.05
|
|
Отправлено: 02.03.15 16:55. Заголовок: Можно еще проще. Есл..
Можно еще проще. Если нашел окно "Ammyy Admin v3.5 - Free" , затем Client ID читаем из реестра.
|
|
|
|
| постоянный участник
|
Пост N: 4018
Зарегистрирован: 12.09.06
|
|
Отправлено: 02.03.15 17:00. Заголовок: Dima пишет: затем C..
Dima пишет: цитата: | затем Client ID читаем из реестра. |
| Как ?
|
|
|
|
|
| постоянный участник
|
Пост N: 4019
Зарегистрирован: 12.09.06
|
|
Отправлено: 02.03.15 17:08. Заголовок: fil пишет: Сначала ..
fil пишет: цитата: | Сначала находишь окно родителя hWnd:=FindWindow( Затем в нем FindWindowEx(hWnd перебираешь |
| Вот переделал пример Григория - https://cloud.mail.ru/public/aaf4a7178a58/ExternalApp_demo2.prg Не работает... Кстати в Win8 пример не работает (CAPTION 'Minimize/Maximize Notepad') ! Заголовок окна - "Безымянный — Блокнот", и в WinXP SP 3 тоже такой же заголовок, там тоже не работает.
|
|
|
|
| |
Пост N: 487
Зарегистрирован: 20.02.11
|
|
Отправлено: 02.03.15 17:51. Заголовок: Andrey пишет: Кстат..
Andrey пишет: цитата: | Кстати в Win8 пример не работает |
| ВСЕ работает. Чудес на свете не бывает, обратимся к "переработанному" исходнику FUNCTION MinimizeIt() ... IF ( n := aScan( aTitles, {|e| APP_TITLE_EN $ e[1] } ) ) > 0 ... теперь смотрим что определено #define APP_TITLE_EN 'Notepad' Как думаешь отреагирует AScan при сравнении 'Notepad' и 'Безымянный — Блокнот' ЗЫ Искать лучше не по Безымянный - Блокнот а просто 'Блокнот' т.е. в твоем примере конструкция aScan( aTitles, {|e| APP_TITLE_RU $ e[1] } ) - сработает
|
|
|
|
| постоянный участник
|
Пост N: 4022
Зарегистрирован: 12.09.06
|
|
Отправлено: 02.03.15 18:28. Заголовок: Haz пишет: ВСЕ рабо..
Haz пишет: цитата: | ВСЕ работает. Чудес на свете не бывает, обратимся к "переработанному" исходнику |
| Понятно. А дальше как в ReadGetIt() ?
|
|
|
|
| постоянный участник
|
Пост N: 4031
Зарегистрирован: 12.09.06
|
|
Отправлено: 04.03.15 12:42. Заголовок: Вот есть исходник на..
|
|
|
|
| постоянный участник
|
Пост N: 4053
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.03.15 21:29. Заголовок: Разобрался я с этой ..
Разобрался я с этой проблемой. Вот текст, кому интересно. https://gist.github.com/VerchenkoAG/40c50f644459caa7ce3c Сделал отдельную ОДНУ программу для своего удаленного подключения к юзерам. Так как AA_v3.5.exe больше 500Кб (линкер BCC 5.5 не тянет в ресурсы), пришлось за архивировать zip-ом и включить в ресурсы к себе в программу, включил настройки этой проги тоже в ресурсы. Как троян получается... Зато ничего дополнительного тащить не надо. Теперь юзер одну кнопку тычет, ID-ник его ко мне на сайт приходит и я могу подключаться к нему. Вообще неплохая программа эта "Ammyy Admin v3.5 - Free", можно и лицензию купить.
|
|
|
|
| |
Пост N: 4596
Зарегистрирован: 17.05.05
|
|
Отправлено: 13.03.15 22:25. Заголовок: Andrey пишет: Тепер..
Andrey пишет: цитата: | Теперь юзер одну кнопку тычет, ID-ник его ко мне на сайт приходит и я могу подключаться к нему. |
| Ну как бы ID можно передать по SMS , по трубе сказать , передать по ICQ , МайлРу агенту и тд и тп. По ходу на AMMI 3.2 не работает , ну это и понятно почему , так как cAppTitle := "Ammyy Admin v3.5 - Free" вшито. PS Проверил на TeamViewer - работает. Только нужно знать какую строку считать.
|
|
|
|
| постоянный участник
|
Пост N: 4054
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.03.15 23:35. Заголовок: Dima пишет: Ну как ..
Dima пишет: цитата: | Ну как бы ID можно передать по SMS |
| Я его еще на экран пользователю вывожу БОЛЬШИМИ ЦИФРАМИ !
|
|
|
|
| |
Пост N: 4597
Зарегистрирован: 17.05.05
|
|
Отправлено: 13.03.15 23:41. Заголовок: Andrey пишет: Я его..
Andrey пишет: цитата: | Я его еще на экран пользователю вывожу БОЛЬШИМИ ЦИФРАМИ ! |
| Это я понял и выводить можно чернобурофиолетовым. А смысл ?
|
|
|
|
| постоянный участник
|
Пост N: 4055
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.03.15 23:47. Заголовок: Dima пишет: А смыс..
Dima пишет: Да юзера разные попадаются... Пока добьёшься от них нужных действий по телефону, готов прибить этого юзера... Коронная фраза от юзера: такого раньше не было... Из-за этого и делаешь всякую приблуду себе, чтобы не зависить от юзера. Себе нервы бережешь !
|
|
|
|