Форум: "Сети";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизПередача записи по сети через сокеты Найти похожие ветки
← →
Vladimir © (2009-12-20 22:01) [0]Здравствуйте! Знаю что тема объезжена уже, но все же. Есть клиент и сервер использующие TClient и TServer Socket соответственно. При передаче TStringList через SendBuf переменная типа TStringList пропадает где то в сети, вообщем приходит пустой. Как быть?
← →
Сергей М. © (2009-12-20 23:17) [1]
> Как быть?
Не передавать переменную типа TStringList.
Ибо тема объезжена уже.
← →
Сергей М. © (2009-12-20 23:24) [2]Результат := SendBuf(PChar(StringList.Text)^, Length(StringList.Text))
← →
Vladimir © (2009-12-21 00:17) [3]а что делать у меня...
//Описание типа информации о клиенте
type
TClientInfo = record
Nik: string[20]; //Ник
Family: string[50]; //Фамилия
Name: string[50]; //Имя
**********: string[50]; //Отчество
Birthday: string[25]; //Дата рождения
ZodiacalSign: string[20]; //Знак зодиака
Email: string[30]; //Почтовый ящик
Phone: string[20]; //Номер телефона
IP: string[15]; //IP-адрес
Password: string[20]; //Пароль
ClientRegDate: string[25]; //Дата регистрации
end;
type //описание записи типа TConnectSets
TConnectSets = record
********: string[35];
*********: integer;
**********: string[35];
Password: string[35]; // пароль -//-//-
end;
type //описание записи типа TMsgSets
TMsgSets = record
*****: TConnectSets; // Настройки подключения
Field_From: string[35]; // От кого
Field_To: string[35]; // Кому
******: string[50];
*******: TStringList;
end;
//запись с описанием сообщения чата
type
TChatMsg = record
From: string[20]; //От кого
Msg: string[100]; //Сообщение
end;
//запись для обмена информацией между клиентом и сервером
type
TDataExchange = record
ActionCode: byte; //Код действия
ClientData: TClientInfo; //Информация о клиенте
MiniChatData: TChatMsg; //сообщение мини-чата
*: TMsgSets;
**: integer;
***: TStringList;
****: boolean;
end;
Как тогда быть?? Чем можно здесь заменить TStringList? Если передаются данные через DataExchange то есть SendBuf(DataExchange, SizeOf(DataExchange)) ??
← →
Anatoly Podgoretsky © (2009-12-21 00:23) [4]> Vladimir (21.12.2009 00:17:03) [3]
Если по длине string[255] не тянет, то тогда array [1..n] of char
Главное что бы была фиксированая длина
← →
Vladimir © (2009-12-21 00:28) [5]Да, 255 маловато) Попробую с массивом тогда, Спасибо!
← →
Дмитрий Белькевич (2009-12-22 13:43) [6]>Результат := SendBuf(PChar(StringList.Text)^, Length(StringList.Text))
IMHO CommaText лучше.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.07 c