Chrome~ работает с поправкой на FileStream.Write(Str[1], Length(Str) * 2); (Delphi XE) конечно недопонял - сначала записываешь в переменную длину строки а потом длину строки устанавливаешь по значение этой же переменной Тогда как длину надо знать заранее и устанавливать длину строки в нее Понял из-за чего у меня не работало s[1] - я тестил на TStringStream а там надо дополнительно с кодировками и типами строк работать
Извиняюсь, всё заработало....))) Code: strlen:= 6; SetLength(buf, strlen); recv(ClientSocket,PChar(@buf[1])^, strlen,0); label1.Caption:= Buf; В прошлый раз прямо в функцию вставлял, думаю из-за этого мозги пудрило... Спасибо огромное за помощь!!!
Дааа, ТС стоит подучить указатели и разадресацию. Протокол TCP гарантирует целостность данных, но может разбить на не определенное число частей. Советую использовать велосипедную надстройку - сначала передавать длинну стороки(хватит WORD), а потом саму строку. А на приемнике сначала получать длинну(те самые два байта), а потом ожидать нужное число байт.