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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.02.2010, 21:42   #11
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Причем тут кодировка вообще?

Смысл в том, что:

1. Существует строка S: String; мы ее шлем
2. Шлем как данные - Pointer(S)^ - это будет вам const buf; аргумент. Его размер = Length(S) * sizeof(widechar); ну или просто на 2. Но перед строкой благоразумно слать ее длину. Т.е. Integer = Length(S);
3. Аналогично и прием. Читаем Integer - пусть будет len: Integer;
Дальше SetString или SetLength или вообще PCHAR s = GetMem(); т.е. суть в том чтобы выделить память для хранения строки. Размер выделяемой памяти будет (len + 1) * sizeof(widechar); А потом в эту область памяти (аля String) читаем буфер.
Вот вы и транспортировали ваш Unicode String

Edit:
TzX - а как по вашему работает SendText ? Просто задумайтесь.

Edit:
Я лично, еще со времен Delphi 7 как только день провел с TClientSocket и т.п. из семейства, сразу плюнул и начал использовать блокирующие сокеты WinSock API. Очень стабильно, и ниразу не подводило.

Последний раз редактировалось BOBAH13; 09.02.2010 в 22:04.
BOBAH13 вне форума Ответить с цитированием
Старый 09.02.2010, 21:49   #12
TzX
Пользователь
 
Аватар для TzX
 
Регистрация: 23.12.2009
Сообщений: 57
По умолчанию

Это если слать буфером. Зачит напрямую с текстом работать нельзя? Не оч хочется, выёживаться и слать простой текст, как данные. Но похоже выбора нет...

Цитата:
TzX - а как по вашему работает SendText ? Просто задумайтесь.
А зачем Велосипед изобретать? =)
Неужели никто так и не разобрался с сокетами и Rad Studio

Edit
И всё таки пришлось передавать и читать через буфер. Только вот не понятно зачем в сделаны сендтекст и ресив текст, если не возможно передавать и получать через них корректно в этой версии Delphi.

Тему можно закрыть

Последний раз редактировалось TzX; 10.02.2010 в 17:32.
TzX вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сокеты в Delphi god110 Работа с сетью в Delphi 13 08.09.2009 11:20
Delphi 2009 guffer Софт 10 25.08.2009 17:32
Delphi 2009 Yar Свободное общение 1 22.06.2009 20:15
Сокеты в Delphi Necro Работа с сетью в Delphi 11 24.04.2007 07:32