![]() |
eXeL@B —› Вопросы новичков —› как ломать exel |
<< . 1 . 2 . |
Посл.ответ | Сообщение |
|
Создано: 21 июля 2006 23:05 · Личное сообщение · #1 Привет всем. Вот теперь у меня еще и такой вопрос назрел. Как получить доступ к ячейкам exelя? Если послать сообщение нажатия мышки в конкретную точку окна я могу (и выделится соответствующая ячейка), то слать текст в какую-то ячейку, а тем более считывать из ячейки я не знаю как. Пробовал WM_GETTEXT - не помогает ![]() Только обязательно нужно обойтись средствами winapi. Я знаю, что для каждой проги бывают свои средства. Например, для IE это функция ShellExecute Но дело в том, что такие вот "неадресуемые" ячейки встречаются не только в exel, и что делать с ними - совершенно не ясно. PS Заранее извиняюсь, если была такая тема. Дайте тогда ссылку, плиз. Вроде поиск поюзал, но не нашел ничего удобоваримого. ![]() |
|
Создано: 13 августа 2006 11:59 · Личное сообщение · #2 tundra37 Да нет, ты не так понял в чем суть дела! Никто с тобой спорить не будет, потому что правду пишешь, но: Меня заинтересовала вот эта строчка: Obsession пишет: EnumChildWindows((HWND)A,(WNDENUMPROC)WinProc,0); Хотел посмотреть сохраняет компиль регистры в стеке или нет! (Для меня “микроVM- VCL35.BPL” не проблема за 5 минут посмотреть.) tundra37 пишет: Ты ее слинковал неправильно, без библиотек посмотреть нельзя. Obsession пишет: Меня, в принципе, научили делать "независимый" ехешник(там с подключением или наоборот отключением использования всяких runtime модулей, библиотек и т.д., я особо не разбирался), он запустится, но он будет большой. Поскольку использование разных формочек, этот GUI занимает все место,то он будет больше 1мб наверное. www.rusfaq.ru/?Step=info&Action=Question&ID=9647 Obsession пишет: BOOL CALLBACK WinProc(HWND wh,LPARAM lParam) lParam нужен для того чтобы передавать в процедуру свои “данные если они требуются для обрабатывания в процедуре или NULL”. Возьмем для примера аттач метку с именем “Вводить шестнадцатеричное число, но, например, не 0x888, а просто888 (в общем, как и показывает spy++)” Можно сразу поставить бряк на нужную функцию, но я решил по коду пробежаться, выводится текст в WM_PAINT с помощью функции DrawTextA. ИМХоооо можно было десятком функций выполнить эту задачу! (а итог ~1mb) Вывод воспользоваться www.structurise.com/kleptomania или для Obsession пишет: Ну, да, я делаю программу для выполнения этого действия, но я не смогу этого сделать, если spy++ не может, т.к. я не могу получить данные окон внутри большого окна. Кто запретит, если только не пропадет огненное желание? ----- ЗЫ: истЕна где-то рядом, Welcome@Google.com ![]() |
|
Создано: 13 августа 2006 13:52 · Личное сообщение · #3 |
|
Создано: 13 августа 2006 16:50 · Личное сообщение · #4 |
|
Создано: 14 августа 2006 12:03 · Поправил: tundra37 · Личное сообщение · #5 Obsession пишет: Не надо меня ни в чем обвинять, Так никто не обвиняет. Просто напрашивается предложение эту тему закрыть и открыть такие: 1) Перехват событий в форме для нестандартных элементов, не имеющих собственный хендл или работающих по старым API. 2) Как устроены формы в Вижуал Фокс Про 6. 3) Как устроены формы в Билдер 3. Если ты в последней теме использовал "старые элементы"(у Борланда они всегда присутствуют для совместимости со старыми исходниками), то тогда вопрос лишний ![]() ======================= И возникла идея. В Вижуал Студии 6 тоже был spy++ - не исключено, что он в фоксе все увидит. То же самое про Билдер 3 - наверняка были "старые" инструменты и они должны видеть старые контролы - не верю я , что в 1998 году по тупому программировали. Использование DrawText еще ни о чем не говорит. Оно и в новых контролах используется. ![]() |
|
Создано: 15 августа 2006 12:48 · Поправил: tundra37 · Личное сообщение · #6 Obsession Ну ты запутал всех. На борланде это ты писал для фокса, а я ее начал изучать ![]() Дай экзешник к фоксу - dll у меня есть ! К сведению - взял фонтэдит написанный на VC++ 4-ом ( его для проверки отладчика кладут в Студию) - spy++ все контролы видит. Смотрел на VB5 написанную криптотулзу - все эдиты(они там нестандартные) видны. Фокс не охота ставить пока. Точнее в свое время я так и не понял, как там программить. ++++++++++++++++++++++++++++++++++ Все, можно на фоксе не слать. Сделал я проектик - действительно контролы не видно. Фокс работает, видимо, в режиме интерпретации, в экзе никаких API нет, фоксовские ДЛЛ грузятся и используются динамически. Буду теперь выяснять, как все-таки его квырять ![]() ![]() |
|
Создано: 15 августа 2006 20:47 · Личное сообщение · #7 tundra37, спасибо тебе! Я рад, что тебя это заинтересовало. Вообще, это ведь действительно способ обойти уязвимость windows к сообщениям. И вот эти фокс-программеры тихой сапой этим и пользуются ![]() rep0A пишет: Вот ещё инфа к размышлению. tnx! Жаль, что все на английском ![]() tundra37 пишет: Просто напрашивается предложение эту тему закрыть и открыть такие: Ну я как бы не знаю, стоит ли флудить -) Ладно уж, я создавал тему с целью укротить конкретную программу ) ![]() |
|
Создано: 17 августа 2006 13:33 · Личное сообщение · #8 Obsession пишет: И вот эти фокс-программеры тихой сапой этим и пользуются Я понял, что все сложнее. В фоксе есть готовые наработки для баз данных. У программистов выбор : быстро клепать на фоксе или мучится с Дельфи или С++ ![]() "Тяжела и неказизиста жизнь любого программиста". ![]() |
|
Создано: 17 августа 2006 20:30 · Поправил: Obsession · Личное сообщение · #9 |
|
Создано: 19 августа 2006 16:30 · Личное сообщение · #10 Obsession пишет: А доступ к окошкам затруднен с целью защиты данных при вводе? Да ничего там не затруднено. Берешь декомпилятор и получаешь текст программы. Для тех, кто занимается фоксом - это идеальный вариант. Для тебя не намного легче, чем на уровне функций рисования работать. Для профессионального взлома естественно надо фокс учить - так проще. ![]() |
<< . 1 . 2 . |
![]() |
eXeL@B —› Вопросы новичков —› как ломать exel |