![]() |
Траблы с Winsock
Цитата:
Код взял тут на форуме. В мемо добавляется пустая строка в результате. Использую Delphi 10 |
|
Цитата:
Если делаю запрос к parsers.info в консоле возвращает знаки вопроса в 2 строчке. К другим сайтам вообще не че не возвращает и ошибку не где не выдает. |
Цитата:
|
Цитата:
|
Удали строчку
Код:
'Accept-Encoding:gzip, deflate'+ #13#10 + |
Цитата:
Цитата:
|
Цитата:
Цитата:
|
Цитата:
|
снифер в руки и вперед за родину.
CopyMemory(@sBuff,pchar(sBuff1),length(sBuff1)); send(sHwnd, sBuff, Length(sBuff), 0); recv(sHwnd, rBuff, Length(rBuff), 0); это код полный пздц. Отправляй данный сразу из строки, без промежуточного буфера. А вот когда считываешь, то указывай не Length(rBuff) а размер буфера в байтах. или юзай sizeof |
Цитата:
recv(sHwnd, rBuff, sizeof(rBuff), 0); Memo1.Lines.Add(rBuff); PS Только начал изучать винсок. Вот что вернулось в ответ 訄 В Delphi 7 все работает!!! А в 2010 нихера ((( |
Цитата:
получится примерно так movsx eax, byte ptr[buffer + 1] push eax //... передается не адрес а символ к тому же расширенный в итоге там нечто такого 0x000000df а запись по такому адресу отловится скорее всего как запись в память отведенную для перехвата нулевых уакзателей а если символ был 0xff получится такой адрес 0xffffffff напишите так send(sHwnd, sBuff1, strlen(sBuff), 0); sBuff1[1] это разыменование а нужен адрес и индексация с нуля не забываем |
Цитата:
Проблема не в коде, я поставил Delphi7 все отлично работает, тоже самое в 2010 не хочет не в какую. |
Цитата:
PS/ Задолбал заторможеный idhttp =) |
Цитата:
Во вторых: ты тут Winsock используешь, а не Indy. В третьих: Код:
for i:=1 to d do html:=html+utf8toansi(buf[i]);Так что еще раз пересмотри свою мысль и пойми, кто "заторможеный". |
Цитата:
Я не много не правельно выразил мысль про idhttp, это было сказанно к тому что он заторможенный по сравнению с winsock, поэтому я решил научится работать с winsock. Код:
for i:=1 to d do html:=html+utf8toansi(buf[i]); |
Цитата:
Все очень просто. Этот код Код:
repeatКод:
html := '';Код:
Connection:Keep-AliveКод:
Connection: close |
| Время: 00:23 |