|
парсер windows приложений
|
|||
---|---|---|---|
#18+
Имеется программа с ценной информацией. Структура БД сложна и не понятна, но зато интерфейс программы предоставляет нужную информацию. Беда в том что данных десятки тысяч параметров и в ручную их пол года собирать. Возможно ли найти или разработать такой же парсер данных из windows приложения как например парсер вэб сайтов? т.е. программа парсер по заданному алгоритму самостоятельно выполняет сбор данных из windows форм приложения? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2015, 17:41 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
1. ...разработать... Без проблем. Если это native-приложения Windows, то через Win API вызовами SendMessage, PostMessage управляем приложением (что бы оно спозиционировалось на нужные данные), через GetWindowText получаем данные из контролоов на экране. 2. ...возможно ли найти... Структура у каждого приложения своя. Т.ч. 100% подходящего готового 100% НЕ найдете Теоретически, можно поискать средства автоматизированного тестирования. Они (средства) такие возможности как посылка сообщений, получение информации из контролов имеют. Но: 2.1. Нормальные продукты скорее всего платные 2.2. Лично мне, как программисту, проще свой велосипед на C++ или Access'е наваять, чем читать доку от средства автоматизированного тестирования и с ним разбираться. IMHO & AFAIK ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2015, 18:48 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev, Перебор контролов забыл - через GetWindow. А еще, не все контролы имеют хэндл ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2015, 18:54 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
Infernal V. RavenПеребор контролов забыл - через GetWindow. Проще с помощью Spy++ посмотреть. Но, да, handle по имени (title) окна нужно будет получать ))) Infernal V. RavenА еще, не все контролы имеют хэндл "Давайте договоримся о терминологии" ( C ) анекдот про философов Если native Windows приложение, то, насколько я знаю, под словом контрол разумно понимать окно. Windows контролов/окон без хэндла мне не представить. Про всякие извращения типа приложений на флеше, Oracle Forms или дельфи не говорим ))). Если дельфи или ему подобное, скорее всего будут проблемы с гридом. Насколько я помню, он в дельфях просто рисуется AFAIK. Но, ячейка в режиме редактирования, тоже должна иметь/получать нормальный Windows контрл, т.е. иметь хендл. В общем, все куда можно руками вводить данные - скорее всего хендл имеет. Т.ч. с ходу - открываем карточку объекта на редактирование и данные утаскиваем. Но, как известно, "дьявол кроется в деталях" ( C ) народная мудрость ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2015, 19:11 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevЕсли native Windows приложение, то, насколько я знаю, под словом контрол разумно понимать окно. Windows контролов/окон без хэндла мне не представить.Канва доступна для рисования и для "чистого WinAPI". Leonid KudryavtsevПро всякие извращения типа приложений на флеше, Oracle Forms или дельфи не говорим )))Почему? Я лично не убежден, что там приложение "чистое WinAPI". Leonid KudryavtsevЕсли дельфи или ему подобное, скорее всего будут проблемы с гридом. Насколько я помню, он в дельфях просто рисуется AFAIK. Но, ячейка в режиме редактирования, тоже должна иметь/получать нормальный Windows контрл, т.е. иметь хендл.Примерно так. Насколько я помню, в момент выбора ячейки двигается (или создается) Edit и принимает размеры ячейки. Так что прочитать его "по контролам" не удастся. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2015, 19:37 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
Infernal V. RavenПримерно так. Насколько я помню, в момент выбора ячейки двигается (или создается) Edit и принимает размеры ячейки. Я меня такие же воспоминания. Подвинуть, получить контроль, прочитать. Все зависит от приложения. Нужно предметно смотреть. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2015, 20:02 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
KVAruИмеется программа с ценной информацией. Структура БД сложна и не понятна, но зато интерфейс программы предоставляет нужную информацию. Беда в том что данных десятки тысяч параметров и в ручную их пол года собирать. Возможно ли найти или разработать такой же парсер данных из windows приложения как например парсер вэб сайтов? т.е. программа парсер по заданному алгоритму самостоятельно выполняет сбор данных из windows форм приложения? Возможно поможет программа для тестирования программ. http://tctutorial.ru/ ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2015, 21:14 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
По сабжу: поможет разве что трейсер/профилер запросов, если таковой существует для данной БД. И то это поможет менее, чем на 50%, т.к. часть параметров может быть хитровычисляемой приложением, а на поиск закономерностей может уйти немеряно времени и с заведома неизвестным результатом. Полное снятие полезной инфы с БД может вылиться в трудновыполнимую задачу. Особенно если сокрытие инфы было одной из задач разработчика. И не надо себя обманывать: никакие отладчики и системы тестирования не помогут. зы: Гораздо проще отказаться от этой инфы. Допустим "база необратимо разрушилась" или "я этого делать не буду". :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2015, 12:11 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
постоянный мембер...И не надо себя обманывать... Вот ровно так в начале 2000-х данные из БД и выковыривали. Был .EXE на непонятно каком средстве и с каким форматом файлов БД. Правда под дос. Написали простенькую программу: зашли в картотеку, принт-скрин в файл, послать комбинацию клавиш "перейти на следующую запись" и опять принт-скрин. В цикле, до упора, пока все > 10 000 тыс. записей не перебрали. Потом простенький парсер информацию разбил по полям и сложил в нашу структуру. Все через экран и клавиатуру. постоянный мемберГораздо проще отказаться от этой инфы. Допустим "база необратимо разрушилась" или "я этого делать не буду" Кому проще? Профессионал - это тот, кто за свою работу (или не работу) получает деньги. Так и в конце месяца, подойдешь к банкомату, а там "гораздо проще зарплату не платит" ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2015, 15:18 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
Кому проще?Бизнес сначала должен выяснить: 1. Может ли он обойтись без этой инфы (т.е. набить ее заново мартышкиными ручками) ? 2. Можно ли эту инфу получить другим способом, кроме выковыривания ? 3. Сколько он готов отдать времени/денег профессионалам за выковыривание этой инфы ? 4. Доступны ли такие профессионалы ? Согласны ли они ознакомиться с проблемой и дать вердикт + разумный прайс ? 5. Что делать в случае неудачи п.3 и 4 ? Далее пусть бизнес и исполнители решают, стоит ли вообще игра свеч. зы: А тут даже СУБД не озвучена. О чем вообще речь ? Какие нафиг АПИ и месаджи ??? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2015, 15:55 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
постоянный мемберА тут даже СУБД не озвучена. О чем вообще речь ? ТССтруктура БД сложна и не понятна, но зато интерфейс программы предоставляет нужную информацию ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2015, 16:14 |
|
парсер windows приложений
|
|||
---|---|---|---|
#18+
KVAruИмеется программа с ценной информацией. Структура БД сложна и не понятна, но зато интерфейс программы предоставляет нужную информацию. Беда в том что данных десятки тысяч параметров и в ручную их пол года собирать. А в чем задача? Найти нужные данные в базе? Или получить копию системы? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2015, 18:31 |
|
|
start [/forum/topic.php?fid=33&msg=38858775&tid=1547517]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
135ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 294ms |
total: | 511ms |
0 / 0 |