Да как тебе угодно, использую архитектуру Клиент-Сервер. Сервер устанавливаешь на удаленную машину, которой нужно управлять, клиентом подключаешься и отправляешь "команды" (блоки информации). На сервере слушаешь определенный порт и в зависимости от пришедших данных выполняешь те или инные команды. Вот собственно и все, чего тут непонятного?
patcher, а если комп за натом или fw, твой сервер устанет слушать, если у тебя нет к нему доступа) =)
Извиняюсь, но непонятно, как заставить удаленный компьютер выполнять эти "команды". Команды то приходят на сервер, но как "обьяснить" компьютеру, что это команды, а не простой текст? Вот тут я спрашивал, как выполнить телнет команду на индейском сервере: http://forum.antichat.ru/thread266783.html. Как видите, проблема ни в передаче текста и ни в архитектуре "клиент-сервер". Спасибо!
FSCool, Для этого и придумывают свои протоколы передачи данных между клиентом и сервером. По сути это набор правил для сетевой передачи. Здесь всё ограничивается только фантазией программиста, т.е. вашей фантазией. Самым элементарным вариантом является передача вместе с пакетом какой-либо сигнатуры. К примеру в начале ставить три байта "MFP" (My First Protocol). Таким образом был пакет: Code: +---------+ | Команда | +---------+ а стал Code: +-----+---------+ | MFP | Команда | +-----+---------+ Что бы отличить серверу команду от каких-то левых данных, достаточно проверить первые 3 байта входящих данных, если это MFC - выполнить команду, иначе просто проигнорировать сетевой пакет.
роби так як це робить браузер (Firefox +httpFox тобі в допомогу) а в плані універсальності... ну подивись що робиться на інших сервісах і пиши код більш загально (наприклад абстрактний клас який перективається не абстрактним типу TMailRuReg = class(TMailReg)) UPD делай так как это делает браузер (Firefox + httpFox тебе в помощь) а в плане универсальности ... ну посмотри что делается на других сервисах и пиши код более общее (например абстрактный класс который перективаеться не абстрактным типа TMailRuReg = class (TMailReg))
Ребят снова нужна помощь. Есть idhttp грузим страницу. На странице есть java скрипт, который вычисляет идентификатор браузера. Как можно его выполнить ? чтобы он просчитал все что надо ? вот сам скрипт. у меня с явой туго. (((( думаю можно переписать на делфи. но хз как ((
Freedom, тут использована об обфускация java, после кое-каких манипуляций Code: document.getElementById('formkey').innerHTML=unescape(vFiLDqA.replace(/Q([\w]{2})/g,'%$1')); где строка vFiLDqA равна или после выполнения функций replace и unescape: Code: document.getElementById('formkey').innerHTML="formcode = '<input type="hidden" name="form_key" value="41bf1ba15bfdd312ca33f5ca6eb06cdbcdddb9aa">';"; дальше смотри сам
Спасибо за помощь. ) Решил сам. Сохраняю в файл, подгружаю в Webbrowser. Выполняю этот скрипт. Выдает нужное значение. то бишь '<input type="hidden" name="form_key" value=" и тд. кстати ты получил твой ответ. Code: document.getElementById('formkey').innerHTML="formcode = '<input type="hidden" name="form_key" value="41bf1ba15bfdd312ca33f5ca6eb06cdbcdddb9aa">';"; каким образом ? это валуе то мне и нужно. Если не таким корявым способом как мой. То рад буду помощи. )
все просто очень) из строки: собираем 2 строки, функцией Code: function AFRxKtofJ(id) получаем элемент по ID к примеру: Code: DamkW=AFRxKtofJ('DVWxfFMaN'); // получаем <span class="kPdEGXWJOtvRDNy" id="DVWxfFMaN">Q66Q6FQ72Q6DQ63Q6FQ64Q65Q20Q3DQ20Q27Q3CQ69Q6EQ70</span> // пеменной gvdPZ присваиваем значение Q66Q6FQ72Q6DQ63Q6FQ64Q65Q20Q3DQ20Q27Q3CQ69Q6EQ70 gvdPZ=''+DamkW.innerHTML; далее идет простое сложение строк в конце которого получаем: ну а далее уже известно "Q" заменяем на "%" и переводим эту строку из hex в нормальный вид, в общих чертах как то так) =)
Не получается авторизоваться на меил ру. Сначала работало потом чето изменил и теперь вообще не пойму, куки все записывается при авторизации в менеджер. Но само оно не авторизуется на сайте с помощью этих кук. Вот собственно код: ....... Куки все выводится из менеджера, редиректит на страницу мой мир как и надо: И вот в PostData записывается страница входа. В общем в чем вата кто подскажет?)
бачиш що робить браузер? http.iohandler:=tidssliohandlersocketopenssl.create;// це потрібно для https http.post('https://auth.mail.ru/cgi-bin/auth', 'Login='+login +'&Domain=mail.ru&Password='+password); детальніше про поєднання: - idhttp - idcookiemanager - idsslopenssl - idcompressorzlib - idsocks тут
подскажите как оформить пост запрос? fullname john это со снифера у меня работает так это норм PostData.Add('fullname='john); а как оформить такой запрос ? это со снифера data[Contact][fname] john
он не видит этот пост запрос , он по https идет PostData.Add('data[Contact][fname]='john); такой вариант правилен нет ?
Подсоединил IdCookiemanager, IdSSLIOHandlerSocketOpenSSL авторизация проходит в первое мемо пишется Code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head><title>@MAIL.RU: ???????????</title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <script language="JavaScript"><!-- window.location.replace("http://e.mail.ru/cgi-bin/start?back=1"); // --></script> <meta http-equiv="refresh" content="0;url=http://e.mail.ru/cgi-bin/start?back=1"> </head> <body></body> </html> А во второе страница входа, несчитывает куки с менеджера или чо
разве? ну тогда ... http.post(uri,'data[Contact][fname] '+str1); если ’john’ ет переменная а если все конст то http.post(uri,'data[Contact][fname] john')