Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  156

•  TDictionary Custom Sort  3 335

•  Fast Watermark Sources  3 086

•  3D Designer  4 845

•  Sik Screen Capture  3 339

•  Patch Maker  3 551

•  Айболит (remote control)  3 656

•  ListBox Drag & Drop  3 013

•  Доска для игры Реверси  81 681

•  Графические эффекты  3 942

•  Рисование по маске  3 246

•  Перетаскивание изображений  2 627

•  Canvas Drawing  2 750

•  Рисование Луны  2 578

•  Поворот изображения  2 186

•  Рисование стержней  2 168

•  Paint on Shape  1 568

•  Генератор кроссвордов  2 235

•  Головоломка Paletto  1 767

•  Теорема Монжа об окружностях  2 229

•  Пазл Numbrix  1 685

•  Заборы и коммивояжеры  2 057

•  Игра HIP  1 282

•  Игра Go (Го)  1 230

•  Симулятор лифта  1 474

•  Программа укладки плитки  1 216

•  Генератор лабиринта  1 547

•  Проверка числового ввода  1 364

•  HEX View  1 497

•  Физический маятник  1 358

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

И снова баннеры - Download Accelerator 5.3.0.0



Оформил: DeeCo
Автор: http://www.cracklab.narod.ru

Page: http://www.downloadaccelerator.com/

[Вступление:]
Мне захотелось чего-нибудь поломать, я зашёл на download.com.com и нашел там это чудо. Программа очень странная, потому как вся документация, все хелпы и readme находятся в ... Интернете! Так что я не смог прочитать ни сколько стоит прога, ни как её зарегить. Наверное, американосы уже привыкли, что у каждого должна быть выделенка, а диал-ап с поминутной оплатой - это для них то же самое, что для нас чунгачкук с луком :)

[Беглый осмотр:]
Я запустил прогу и первое что я увидел - это большой баннер с рекламой. Ну вот, опять баннеры, а с другой стороны вспомню как эту хрень убирать :)

[Начинаем:]
В борьбе с баннерами есть 2 ключевых момента:
1) Отключить механизм загрузки самих баннеров из Инета, т.к. это занимает и без того небольшую скорость моего модема.

2) Найти процедуру создания окошка с баннером и сделать так, чтобы размер баннера в высоту стал равен 0, и подтянуть все остальные окошки вверх до упора под главное меню.

[Приступим к пункту 1:]
Для начала я дизассемблировал программу в W32Dasm'е и защел в String Reference. Там было дохрена всяких строк, но я искал пока неизвестно что и...нашел строку:
	* Possible StringData Ref from Data Obj ->"http://ads.downloadaccelerator.com/cgi-bin/ads"
ОООчень похоже на адрес, откуда прога тянет картинки баннеров, это видно по "ads", что очень часто расшифровывается как ADultSystem :) вот и отлично, можно прямо щас затереть в программе этот адрес и больше прога никуда не сунется. Этот вариант лучше, чем искать таймер, затирать вызовы функции, потому как такие затирания могут нарушить работу проги, а нам это не надо, так что обойдёмся малой кровью. Затираем.

[Приступим к пункту 2:]
Это уже посложнее, потому как единого подхода к этой проблеме нет и каждый раз чего-то новенькое приходится выдумывать. Для начала я взял утилиту Spy и выяснил, что баннерное окно - это (как обычно в таких ситуациях) два окна: одно родительское (617x80) другое - сам баннер (468x60) размеры баннерного окна говорят уже о том, что он - баннер.

Теперь мне нужно найти функцию создания этого окна, а в функцию параметры чаще всего передаются через стек, т.е. командой push. Значит мне нужно найти команду: push 00000050 т.к. высота окна 80 = 50h

Я открываю DAP.exe в HView, перехожу в режим ассемблера и нажимаю два раза F7 это поиск по ассемблерной команде, ввожу туда push 50 и начинаю искать. Такая команда встречается 7 раз. Теперь я методом тыка по очереди в каждом из семи раз меняю push 50 на push 00, т.е. чтобы размер окна был равен 0, и проверяю. На четвертой попытке у меня получилось: .00461F2D: 6A02 push 002 .00461F2F: 6A50 push 050 .00461F31: 50 push eax .00461F32: 6A00 push 000 .00461F34: 6A00 push 000 .00461F36: 6A00 push 000 .00461F38: 8BCE mov ecx,esi .00461F3A: E8737F0400 call MFC42.6197 Очень похоже на вызов функции создания окна. Меняем по адресу 00461F2F:
push 50 на push 00 и запускаем программу:
Окна с баннером больше нет, а все остальные окна подтянуты под главное меню.
УрА!

Исследовал и наваял туториал:
vallkor //PTDS
E-mail: vallkor@chat.ru (vallkor@etel.dn.ua)
Page: http://vallkor.chat.ru





Похожие по теме исходники

Download Plus

File Downloader

WebSite Downloader

INDY HTTP Download

 



Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте