Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.12.2011, 01:16   #1
Willer55
Пользователь
 
Регистрация: 17.08.2011
Сообщений: 35
По умолчанию Кодировка в сообщениях между клиентом-сервером.

Доброго времени суток.

Сервер - Delphi;
Клиент - Flash;

Прблема в следующем.

С клиента отправляю строку "Test". А сервер получает кракозябры(佌彇义ㄻ㘹㔱㤴਷leBuffer). Думаю что проблема с кодировкой, но не как не могу ее решить.

на клиенте код который посылает:
socket.writeUTFbytes("Test");

на сервере принимаю
str := Socket.ReceiveText.

Хотя когда посылаю с сервера клиенту, все проходит нормально.

Использую Delphi 2009 и Flash Pro CS5.

Последний раз редактировалось Willer55; 10.12.2011 в 01:22.
Willer55 вне форума Ответить с цитированием
Старый 11.12.2011, 09:11   #2
Willer55
Пользователь
 
Регистрация: 17.08.2011
Сообщений: 35
По умолчанию

Нашел решение проблемы.

Проблема связанна, как я и думал с кодировкой. Дело в том, что Flash посылает сообщения с кодировкой Utf-8, а на Delphi 2009 и 2010 кодировка Utf-16 и что бы все прочитать нормально, надо сделать маленькую махинацию.

Код:
var
 msg : string;
 A_msg : AnsiString;

begin
   SetLength(A_msg,Socket.ReceiveLength);
  SetLength(A_msg,Socket.ReceiveBuf(Pointer(A_msg)^,Length(A_msg)));
  msg := A_msg;
  ShowMessage(msg); // проверяем, что получили
end;
Тогда все будет правильно отображаться.
Willer55 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
обмен сообщениями между сервером и клиентом Don Karleone Работа с сетью в Delphi 3 25.02.2011 15:24
Знание протокола TCP под Linux, передача данных между клиентом и FTP сервером komis Помощь студентам 0 19.04.2010 17:20
Краткая справка о сообщениях форума DeKot О форуме и сайтах клуба 4 08.09.2009 17:28
Музыка при сообщениях delphin100 Мультимедиа в Delphi 7 08.05.2008 15:21
обмен сообщениями между клиентом и сервером используя ClientSocket и ServerSocket xTANATOSx Работа с сетью в Delphi 3 04.10.2007 15:17