|
|
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Добрый день. Такая задача. Есть программа 2002 года от Microsoft. Интерфейс очень неудобный. С помощью resource hacker я расширил диалоговые окна и стало удобнее работать. Правда есть места, которые я не нашел ни в ДЛЛ ни в ЕХЕ с помощью resource hacker. Есть ли какие-нибудь программы, которые могут дать какие-либо сведения об интерфейсе запущенной программы. Хочу конкретно в элементе "дерево" сделать поиск по этому дереву, так как его нет. Видел статью на хакере как склеить 2 исполняемых файла. Идея появилась написать новый ЕХЕ который будет в запущенной программе запускать новое окошко поиска и шагать по дереву. Может кто толкнет дальше, куда копать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2014, 11:01 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Gustly, Ну так элементы интерфейса могут создаваться динамически, кодом. Имхо тут уже надо быть гуру ассемблера с хексредактором наперевес. Тем более чтобы добавить туда поиск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2014, 11:12 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
posledniy-ptr, Очень давно была у меня прога, которая позволяла мышкой тупо кликнуть по элементу другой проги, и получить информацию. Точно помню мне писалось что-то типа TEdit из моих дельфовых EXEшников, но увы не помню уже и названия. Еще пример всякие анлокеры или показыватели паролей, которые при наведение на инпут вместо **** показывают текст. Вот и хочу хотя бы свою отдельную прогу сделать, которая при наведение на дерево основной проги по нему пробежалась и встала на нужный элемент. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2014, 11:39 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
GustlyМожет кто толкнет дальше, куда копать? Найти хендл дерева и изучать справку на предмет, что с ним можно сделать: http://msdn.microsoft.com/en-us/library/windows/desktop/bb759988(v=vs.85).aspx P.S. И надеяться, что контрол нативный, а не самописный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2014, 11:47 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
wadman, Так вот. Как мне извне этот хэндл получить? Опыт более менее есть только в делфи, visual FOXPRO. Думаю делфи больше в этом поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2014, 11:50 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Gustly, Spy++ пробовал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2014, 11:54 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
GustlyКак мне извне этот хэндл получить? EnumWindows EnumChildWindows Spy++ подскажет путь для поиска. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2014, 11:56 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Gustly, FindWindow, FindWindowEx. Работать с деревом через SendMessage. Кнопку можно псевдоприцепить к окну "дочерней программы" через SetParent ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2014, 18:41 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Gustly, добрый совет тебе: брось это дело. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 12:57 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
petalvik, Я так понял это приблуда Visual studio ? В наличие у меня только express версии 2008 / 2012, они подойдут? VSVLAD, Можно поподробнее, это где вызывать? MasterZiv, Для меня это спортивный интерес. Бывает немного минут появляется в наличие, и пытаюсь сделать что-нибудь эдакое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 13:26 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Потратьте свой спортивный интерес на чтение документации. В частности, на ограничения Express-версий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 13:57 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Почти получилось. Получил хэндл элемента. Это оказался ListBox. Но вот как с ним теперь работать? Написал прогу на visual basic посылаю Call SendMessage(wnd, WM_SETTEXT, 0, "Test") В инспекторе (вместо spy++ скачал Winspector) вижу новое свойство у него. Но как перебрать все элементы, да еще после этого выбрать нужный? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 16:10 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
GustlyCall SendMessage(wnd, WM_SETTEXT, 0, "Test") MSDN вообще полезная штука. Позволяет сэкономить кучу времени на ожидании ответов: http://msdn.microsoft.com/ru-RU/library/windows/desktop/bb775146(v=vs.85).aspx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 16:15 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
wadman, Вот. Я как раз сам до него дошел. Теперь напоролся на. У меня есть сообщение LB_FINDSTRING message, а на вход ему надо Long, то есть число. Как можно конвертнуть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 16:23 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
авторA pointer to the null-terminated string that contains the string for which to search. The search is case independent, so this string can contain any combination of uppercase and lowercase letters. Зачем конвертировать? Pointer и есть число (порядковый номер ячейки памяти). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 16:43 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
GustlyВот. Я как раз сам до него дошел. Теперь напоролся на. У меня есть сообщение LB_FINDSTRING message, а на вход ему надо Long, то есть число. Как можно конвертнуть? Даже отвечать не хочется. Ты решил заняться матаном и решать матрицы с многомерными интегралами но вдруг (внезапно!) оказалось что не умеешь умножать числа в столбик. От такой тоски и печали меня охватывает грусть и уныние за весь new generation... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 16:57 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
wadman, Объявление Код: vbnet 1. 2-й параметр ByVal wMsg As Long - число. А в хелпе написано LB_FINDSTRING. Или я что-то не так понял ? ?( Вот пример заполнения текста Код: vbnet 1. Здесь WM_SETTEXT объявляется в начале кода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 17:00 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Gustly2-й параметр ByVal wMsg As Long - число. А в хелпе написано LB_FINDSTRING. И? Не понимаю, в чем проблема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 17:24 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
wadman, У меня не объявлен LB_FINDSTRING. На сколько я помню надо подключать файл с объявлениями, у меня его нет, наверное. Нашел на одном сайте объявление LB_FINDSTRING, но message стал возвращать очень большое число, вместо ожидаемого 12 (номер искомого элемента), возможно там задан LB_FINDSTRING неверно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.07.2014, 20:51 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Public Const LB_FINDSTRING = &H18F такие вещи не на сайтах ищут, а к примеру - API Viewer. Или типа такого наверно есть для делфи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 09:13 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Gustly, LB_FINDSTRING = 399, возвращает либо индекс искомой строки, либо -1, если не найдено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 09:14 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
Делаю MsgBox(SendMessage(wnd, LB_FINDSTRING, -1, "")) Показывает всегда 4294967295, при любых значениях 4-го параметра. Увы в visual studio не нашел API viewer :( приходится рыть в инете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 09:45 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
GustlyПоказывает всегда 4294967295, при любых значениях 4-го параметра. Это -1. GustlyУвы в visual studio не нашел API viewer :( приходится рыть в инете. Это там все имеется. Может стоит обратиться к программисту? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 09:52 |
|
||
|
Анализ интерфейса программы
|
|||
|---|---|---|---|
|
#18+
wadman, Обижаете. Я и есть программист, только другого направления. И вижу visual studio вместе с visual basic 2-й день. Для себя нашел ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.07.2014, 10:08 |
|
||
|
|

start [/forum/topic.php?fid=16&startmsg=38689173&tid=1341300]: |
0ms |
get settings: |
10ms |
get forum list: |
24ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
165ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
87ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 553ms |

| 0 / 0 |
