PDA

Просмотр полной версии : Выдергивание картинки (C++)


{Worm}
29.10.2009, 15:10
Есть программа, написана скорее всего на С или С++, отображает картинки, каким образом их можно выдернуть из проги... Прога показывает капчи и ниже поле эдит для ввода, т.е. мне нужно выдернуть картинку капчу из той проги... Подскажите куда копать... Не чего путного не приходит в голову

{Worm}
29.10.2009, 15:12
Эм перечитал и понял что не дописал, хочу написать прогу на С++ которая бы выдергивала капчу из той проги и обрабатывала её... Вопрос стоит как выдернуть...

slesh
29.10.2009, 15:17
как вариант вот что делать:
1) находиш по названию окно проги.
2) получаеш по HWND проги её HDC
3) получаеш координаты окна, затем зная координаты картинки, ты копируеш часть экрана зная hdc, а там уже как угодно можно работать с ней

{Worm}
29.10.2009, 15:31
Спасибо! Буду ковыряться...

{Worm}
03.11.2009, 21:33
Эм, написал оболочку программы, проработал интерфейс, подошел к данной проблеме... В общем, опишу проблему. Через спай++ нахожу данное окошко (прога на дэльфи с которой ворую фотку) в общем спай находит тока окно и два дочерних элемента кнопку и поле эдит, картинка как бы в окно вделана... т.е. отдельно её сфотать не получается, т.е. обратиться к ней на прямую что бы извлечь только её изображение, а не всё окошко проги.
В общем соит проблема как извлеч только фотку, размеры её всё время разные... т.е. не получится отследить координаты окна и вычесть или прибавить... В общем кто что посоветует???

gold-goblin
03.11.2009, 21:56
Откуда капча берется? может легче отснифать траф если из нета.

slesh
03.11.2009, 22:00
Ну так ты делай скрин самой формы. А затем ищи фотку на форме. то что фотка имеет прямоугольный размер - это тебе даже поможет.
т.е. просто тупо пробегаешься по пикселям от и сравниваеш текущий цвет с цветом фона формы. как изменился так значит пошла вотка и следоватлеьно нашел одну сторону изображения. И так с каждой стороны

{Worm}
03.11.2009, 23:18
Капча берется с кучи ресурсов, перед этим я думал вариант снифа, но эт как то сложно... Мб в будущем...

slesh. Некоторые капчи, бесцветный фон у них, и сливаются с фоном... сейчас выбрал размер самой большой капчи и скриню по её размерам все остальные, хотя только пришла еще одна мысля в голову, завтра попробую...
ЗЫ всем спасибо за советы

{Worm}
04.11.2009, 18:53
С картинкой разобрался как захватывать, теперь при отправлении картинки через хттп веб реквест, прога отправляет данные в два захода, сначала шлет заголовок, А потом данные которые я добавляю в запрос (фотку и пару полей).

1 запрос - Отправляется хеадер запроса (хост, контент тайп, боундари, кэш контрол и размер контента, потом идет переход \r\n На этом пакет обрывается

2 запрос идет - все что я дописываю сам и отправляю через req.GetRequestStream().Write(data,0,(Int32)ms.Leng th);

В общем не могу понять нафига он делит запрос на 2е части и как от этого избавиться, т.к. сервак меня нафиг посылает, он считывает тока 1 запрос, а второго не дожидается...

{Worm}
06.11.2009, 21:42
UP обыскал и ру нет и буржуй нет, ответа не кто не знает и в разных версиях вроде по разному Х_х

В общем Я создаю запрос через хттпвебреквест заполняю данными, записываю в него масиив, и при посылке прога его зачем то делит на 2а пакета в одном отсылает заголовок, а во втором пакете шлет данные которыми я заполнил запрос... В общем очень странно... Посоветуйте как с этим справиться... Уже всё перепробовал

{Worm}
06.11.2009, 22:09
UP обыскал и ру нет и буржуй нет, ответа не кто не знает и в разных версиях вроде по разному Х_х

В общем Я создаю запрос через хттпвебреквест заполняю данными, записываю в него масиив, и при посылке прога его зачем то делит на 2а пакета в одном отсылает заголовок, а во втором пакете шлет данные которыми я заполнил запрос... В общем очень странно... Посоветуйте как с этим справиться... Уже всё перепробовал

Пишу на C#

{Worm}
08.11.2009, 07:24
Всё, сам разобрался... В 1 пакет не объединил, но заставил сервак обрабатывать их... Формировал до этого не верно
Тему можно закрывать. Всем спасибо...

OPF_Nik
08.11.2009, 11:10
Для того что бы из .exe вытягивать файлы есть спициальная прога: Restorator )))
Качать тут:
http://depositfiles.com/ru/files/lrkcstpfo