Привет
Прочитал тут у тебя про Spedia. Так как я некоторое время назад эту
прогу слегка поковырял, хотелось бы сделать несколько комментариев:
Сначала небольшое лирическое отступление в область
Browsers and DDE.
Вкратце: Netscape и Explorer (про остальные не знаю)
позволяют любой программе, зарегистрировавшей себя определенным образом
как DDE сервер получать по DDE уведомления о _каждом_ загруженном ресурсе,
будь то картинка, html или mp3 с голосом президента нашего Владимира
Владимирыча. При этом Netscape посылает кроме урла самого ресурса еще
и реферер. А теперь начинается проза жизни.
Spedia Bar получает эти уведомления. И если тип ресурса
- text/html, то он
1) Cлегка шифрует полученный адрес + window id + mime type (+ referer
если это Netscape) и дальше что? Правильно, дальше он отправляет эти
данные на свой сервер;
2) Cкачивает новый баннер.
Ну фиг бы с ним с баннером, кроме траффика он никого
не волнует, а вот то, что кто-то имеет подробную информацию о посещенных
страницах... Мда... грустно, девушки... Кроме того некоторые люди (пошли
им Господь немного разума) еще пользуются адресами типа ftp://username:password@host
прямо из строки браузера. Вся эта инфа становится доступна умельцам
из Spedia (btw в privacy policy или как там оно у них на сайте называется,
факт сей все-таки отражен).
Для тех, кто после всего этого еще не передумал накалывать
эту веселую контору (а также для тех, кто наоборот, собрался :) могу
сообщить что одной эмуляции движения мыши мало, так как если юзер периодически
(довольно часто) не загружает новые страницы - очки не начисляются (во
всяком случае у меня - не начисляются :)
Один из возможных вариантов (у меня в принципе работает,
но пока кривовато, полагаю что есть еще какие-то неучтенные моменты,
кроме того есть некоторое подозрение что Spedia слегка мухлюет с начислением
очков):
1. Написать прогу которая регистрирует себя как DDE
сервер, который получает от Netscape и/или M$IE WWW_URLEcho notifications.
(Коротко: для Netscape надо коннектиться на топик "NETSCAPE", для M$IE
- на "IEXPLORE". В обоих случаях service name - "WWW_RegisterURLEcho".
После этого послать Netscape XTYP_POKE, а explorer'у - XTYP_REQUEST
с хэндлом к созданной предварительно DDE службе). Ну и пусть она живет
где-нить на бэкграунде и скидывает все урлы в файл.
2. Та же или другая программа время от времени (минимум
пару раз в минуту) коннектится на DDE topic "SPEDIA_IE" или "SPEDIA_NS"
(в зависимости от того, уведомления какой бродилки есть желание эмулировать)
with service name "WWW_URLEcho") и посылает XTYP_POKE с данными URL
(в том же формате, в котором их присылает бродилка)
3. Spedia начисляет очки только в том случае если активное
окно принадлежит либо Netscape либо M$IE и если Spedia Bar не минимизирован
(ну эти фишки патчатся :)).
4. Движение мыши - ну это совсем просто... вешается
таймер который раз в какое-то время вызывает SetCursorPos, сдвигая курсор
случайным образом на пиксел). Можно и отпатчить, но там вызовов GetCursorPos
не так мало, а со временем у меня последний месяц совсем напряг :( так
что на это я забил.
Вот такие дела, уважаемые любители легкой наживы =P
Как я уже сказал, со временем у меня туго, да и не
уверен я что на Spedia можно заработать без геморроя больше сотни в
месяц. Надеюсь, что руки у меня эту хренотень доделать все-таки дойдут.
Кстати... я прошу не понять меня неправильно, но благие дела благими
делами, а покушать иногда хочется. Так как осуществление желания иметь
деньги на покушать и отнимает большую часть времени, и так как мне в
принципе глубоко фиолетово, что для этого ломать :), завершение процесса
работы над вышеуказанной программой можно приблизить, указав при регистрации
в Spedia реферер 955636. Еще раз хочу подчеркнуть, что со Spedia я разберусь
независимо от этого. Вопрос только во времени.
Удачи, -= Ivanopulo/[DAMN]
=-
P.S. Забыл написать, что Spedia Bar у меня скачан около
недели назад. Может быть они че-то там обновили и поэтому с одной только
эмуляцией движения мыши он очков не начисляет...
|