Браузер сам всё это пишет(в редких случаях не пишет). 1)Найти где хранится история браузера. 2)Копипастить оттуда каждые 10секунд например, на случай если история будет удалена. Прокси тоже варнант впринципе.
не слишком то сложно.как и сказано было через хуки.где то видел даже пример на вб. только он там от всех прог записывал.для браузеров там просто отслеживать окна и их классы придется.
короче делаешь так(или если уже знаешь то не делаешь):берешь прогу для отслеживания используемых апи.берешь любой браузер там открываешь любую страницу,смотришь какие функции юзаются.дальше пишешь перехватчик ф-ии. пысы: пунто умеет кстати такое. конечно в 10 строк кода не уложишься, но... __________________________________________ короче покопался я тут за тя малех,даю более прямую наводку. смотри на функи из либы wsock32.dll чтишь сие http://ru.wikipedia.org/wiki/HTTP в обработчике отлавливаешь хттп запрос.как правило тебе надо выдергивать метод get, в которм и будет содержаться url на который пошел юзвер.как то так.
Ну реализовать на мой взгляд не самая сложная задача, самому стало интересно(пиши в icq будем думать вместе ) Некротема прослушки 80 порта на ачате
Можно перехватывать функции, которые браузеры используют для работы с сетью, но только лучше не функции Ws2_32.dll, а функции более высокого уровня (так как перехватывая send и recv ты не сможешь получить адреса страниц, на которые переходит пользователь и которые начинаются с https).
Как распарсивать стр в Chuncked энкодинге, точнее как понять что часть ответа чанк(размер следующей порции данных в шестнадцатеричном формате) а не часть документа.
ребят!!! есть хоть кто нить, кто шарит в инди в делфи 2010(не знаю какая там версия) Кто может помочь?
как с помощью УДП отправить файл частями как с помощью УДП отправить файл частями Клиент Code: procedure TForm1.screens; var Buf: array[1..8192] of Char; size:integer; Begin try MemStream:= TMemoryStream.Create; MemStream.LoadFromFile('c:\1.bmp'); MemStream.Position:=0; IdUDPClient1.SendBuffer(MemStream.memory^,MemStream.Size); Application.ProcessMessages; finally MemStream.Free; end; end; сервер Code: procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream; ABinding: TIdSocketHandle); begin MemStream:= TMemoryStream.Create; MemStream.CopyFrom(AData, AData.Size); MemStream.Position := 0; MemStream.SaveToFile('111.bmp'); MemStream.Free; end; Спасибо!
Очень просто. Размер порции данных стоит в начале документа сразу же после хидеров. Поэтому копируешь все от начала тела документа до #13#10 и переводишь эту строку в число. Далее считываешь столько байтов, сколько было указано и повторяешь эту процедуру до тех пор, пока размер следующего чанка не равняется 0. Напиши конкретно в чем проблема.
Chrome~, спасибо. Вот зачем говорить то чего не знаеш? Ты слишком самоуверен.... Скачай синапс, скачай стр в chunked енкодинге, и попробуй разжать злибом... Вылезет исключение причина в том что синапс считает перые 1-2 байта... В следующий раз думай что говориш...
Я тоже довольно таки долго ее использую, но мб стоит попробовать воспроизвести мою ситуацию, и получить сжатую жзипом стр. передаваемую чанкед енкодингом?
есть в паскале что-то вроде .split(' ') чтобы разделяло строку определенным символом? или предложите способ разбить предложение на слова
Есть процедура, но не помню имени. Правильное решение - пробелы. Нужно посчитать количество и позицию всех пробелов. Кол - во примерно можно посчитать так: PHP: var i: integer; s: string; begin s := edit1.text; for i := 1 to length(s) do if s[i] = ' ' then ShowMessage('alert'); end; Код на делфи, но думаю, разберешся . Чтобы подсчитать позицию гугли ф-цию Pos().
http://vk.com/feed Code: Content-Encoding:gzip Transfer-Encoding:chunked Вот пример такой стр. Первоначально вопрос стоял не о синапсе а о том как понять где начинаеться и кончаеться чанк....
Ребята, нужно отправить и считать стринговую строку из com порта. Ковыряться с createfile нет желания. Скачал компоненту tbcomport не всекаю как использовать в консольном приложении. Спасибо-пожалуйста.
Подключаешь в uses юнит, в котором находится описание tbcomport. Далее пишешь что то подобное этому: Code: var bcomport: tbcomport; ... begin bcomport := tbcomport.Create; // Create может принимать некоторые параметры // Выполняешь любые действия, работаешь с объектом bcomport bcomport.Free; end.