![]() |
Модераторы: Snowy, Poseidon, MetalFan |
![]() ![]() ![]() |
|
strk |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 5.2.2009 Репутация: нет Всего: нет |
Здравствуйте! Возникла проблема с передачей файла(TMemoryStream) через TServerSocket и TClientSocket в Delphi 2010/XE...
Проблема такая: Сам по себе файл передаётся вроде без проблем, но при попытке получить файл иp TMemoryStream он получается как будто в неправильной кодировке. Вроде больше нечего сказать про проблему. Но известно что проблема точно не в коде программы, т.к. проверял на Delphi 7/2010/XE и на 7ой версии проект без проблем передавался и сохранялся(без изменений кода) как надо, но в 7ой версии не компилируется вся остальная программа и по этому хотелось бы решить эту проблему и продолжить писать в Delphi XE. Зарание спасибо P.S. Передавать пробовал разными способами, все работали только на 7ой версии... Это сообщение отредактировал(а) strk - 19.10.2010, 17:20 |
|||
|
||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: нет Всего: 88 |
А как файл попадает в TMemoryStream? до его попадания туда не возникает проблем с переходом на уникод?
-------------------- Обижено школьников: 8 |
|||
|
||||
strk |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 5.2.2009 Репутация: нет Всего: нет |
На сервере:
На клиенте:
то что описано в клиенте повторяется пока файл не загружен, а точнее пока Receive = true там еще перед передачей отправляется размер и имя файла, но с ними проблем нет. Файл точно передается полностью, так как при сохранении количество символов и их положение совпадают, но сами символы другие... И как я уже писал, такая проблема только в 2010 и XE, а в Delphi 7 с этим проблем нет, всё отлично передается.
вроде бы нет, по крайней мере я ставил перед пиремом BreakPoint и смотрел что происходит с переменными на каждом действии, а именно с переменной Text и в ней текст был нормальным каким был отправлен Это сообщение отредактировал(а) strk - 19.10.2010, 18:34 |
||||||
|
|||||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: нет Всего: 88 |
Ну и заполнение Text не показано, там может быть проблема с кодировкой. Лучше бы вообще отказаться от использования строки как просто буффера. Ну или напиши там AnsiString и проверь -------------------- Обижено школьников: 8 |
|||
|
||||
kami |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 6 Всего: 72 |
||||
|
||||
strk |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 5.2.2009 Репутация: нет Всего: нет |
||||
|
||||
v1m |
|
|||
v1mka Профиль Группа: Участник Сообщений: 15 Регистрация: 10.6.2010 Репутация: нет Всего: 1 |
лучше TFileStream использовать
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Сети" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Сети | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |