Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Сети > обмен двнными по TCP |
Автор: slavonX86 28.1.2006, 23:17 | ||||
ДЛЯ ОБМЕНА ДАННЫМИ ПО HTTP использую пакет SimpleTCP. Запрос генерирую сам. Встретился с такой проблемой. Я хочу загрузить PNG картинку с саита. Отправляю запрос и получаю ответ:
а вот что показал сниффер:
Я подумал что глючиный компонент и зделал через TCPClient, но с ним такая же фигня. ! Помогите загрузить картинку ! |
Автор: Snowy 29.1.2006, 10:11 |
Код нужен, однако. Буз кода не понять, что у тебя не так. |
Автор: slavonX86 29.1.2006, 10:54 | ||||
1) TcpClient1.Connect; 2)
3)
4) Далее читаю: TcpClient1.ReceiveBuf P.S.> Рисунок приходит на компьютер, но ни один (SimpleTCP, TcpClient, ...) сетевой компонент не читает !!! |
Автор: Snowy 29.1.2006, 15:42 |
Вот как раз это и интересно. Как именно и куда ты читаешь? Вся проблемма именно тут. |
Автор: slavonX86 29.1.2006, 16:04 |
Пробовал грузить через: idHTTP1.Get('..........'); БЕЗРЕЗУЛЬТАТНО !!! Хм, вобще картинки не грузятся !!! Как можно загрузить картинку с саита ? |
Автор: Snowy 29.1.2006, 21:12 |
Покажи код загрузки. Все можно загрузить. Что-то делаешь не так. Только что... Нужно посмотреть код, как ты загружаешь и куда. Скорее всего проблемма именно в "куда". |
Автор: Rexar 29.1.2006, 22:31 | ||||||
Тут я пытаюсь загрузить картинку с сайта rambler.ru А в мемо приходит вот такой текст:
А вот что показал сниффер:
P.S > т.е. картинка приходит, но не читается. |
Автор: N1k 30.1.2006, 09:54 |
Не читаются ЧЕМ? MEMO? C чего ты взял что в мемо что-то должно отображаться кроме того что у тебя отображается? И вообще, каким боком мемо связано с картинкой.... |
Автор: slavonX86 30.1.2006, 09:58 |
Птому что это ответ на запрос !!! Это параметр Data HTTP протокола !!! |
Автор: Snowy 30.1.2006, 10:17 | ||
Ну вот. Как я и говорил, вся проблема в "куда" Ты пытаешься запихать бинарные данные в текст. Естественно, что первая текстовая часть проходит нормально. А вот бинарная часть режется на первом же #0. Все принимается нормально, просто #0 распознается как конец строки. Можешь проверить на примере:
Отобразить бинарные данные можно в HEX или сохранить в файл. Можешь банально получить ответ на запрос в string, а потом все #0 заменить на '0'. Смотри, что тебе больше подходит. |
Автор: slavonX86 30.1.2006, 10:24 |
Пасиба !!! Ответ на вопрос я получил, можете закрывать тему !!! |