Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.03;
Скачать: CL | DM;

Вниз

StringList & WinSocket   Найти похожие ветки 

 
SergeyIgudin ©   (2004-07-26 15:51) [0]

Вопрос такой:
у меня есть StringList(TStringList) и есть ServerSocket(TServerSocket), я заполняю СтрингЛист N-ым количеством строк, причем не только строками но и какими-нибудь объектами:
.............................
var
Cln_msg, Cln_msg2:TStringList;
begin
Cln_msg:= TStringList.Create;
Cln_msg.Add(Edit1.Text);
Cln_msg.Add(Edit2.Text);
Cln_msg.Add(Edit3.Text);
Cln_msg2:= TStringList.Create;
Cln_msg2.Add(Edit3.Text);
Cln_msg2.Add(Edit3.Text);
Cln_msg2.Add(Edit3.Text);
Cln_msg.AddObject("Cln_msg2", Cln_msg2);
......................................
и т.д.

отправить его по сокету вроде как не проблема... я делаю вот как:
................
i:= ?????? //Кол-во байт занятых заполненным стринглистом
           //что использовать sizeof или еще че?  
ServerSocket.Socket.SendBuf(Cln_msg, i);
................

основная моя беда это принять этот буффер...
клиентское приложение выдает ошибку (там чет про память...)

"принимаю" я так (приложение-клиент):
procedure TForm1.ClientSocketRead(Sender: TObject; Socket: TCustomWinSocket);
var
 Cln_msg: TStringList;
 i: Integer;
begin
 Cln_msg:= TStringList.Create;
 i:= Socket.ReceiveLength;
 Socket.ReceiveBuf(Cln_msg, i);
 Edit1.Text:= Cln_msg.Strings[0];
 Edit2.Text:= Cln_msg[1];
 Edit3.Text:= Cln_msg[2];
..........................

и вот тута и валятся всякие ошибки!!!!!

ЧЕ ДЕЛАТЬ? ПОДСКАЖИТЕ КТОНИТЬ!!!!


 
Digitman ©   (2004-07-26 15:57) [1]


> ЧЕ ДЕЛАТЬ


книжки читать


 
SergeyIgudin ©   (2004-07-27 08:06) [2]

и всетаки?!?!?


 
Digitman ©   (2004-07-27 08:22) [3]

ServerSocket.Socket.SendBuf(Cln_msg, i);
Socket.ReceiveBuf(Cln_msg, i);

ты вообще-то понимаешь, какую чепуху ты написал в этих строках ?

> Кол-во байт занятых заполненным стринглистом


Доступ к буферу данных стринг-листа осуществляется через св-во Text, а размер буфера данных рассчитывается с пом. Length(Text)


 
Kurtevich   (2004-07-28 18:06) [4]

Слышите, люди, может я конечно ламер, но я ваще не понимаю как это вы умудряетесь пересылать через тсп/ип обьект, состоящий из указателей на память, а потом еще на том конце удивляться, почему то, на что указывают указатели, не переправилось?... или тут чего-то недописано?.... интересно еще, как же все-таки вычисляется размер буфера?...


 
Palladin ©   (2004-07-29 02:37) [5]

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



Страницы: 1 вся ветка

Текущий архив: 2004.10.03;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.044 c
3-1094024081
kvit
2004-09-01 11:34
2004.10.03
Нужно создать типа генератора в Interbase!


4-1093237731
Станислав
2004-08-23 09:08
2004.10.03
sendkeys


1-1095214653
Артем К.
2004-09-15 06:17
2004.10.03
Ускорение запуска программы?


3-1094126032
V l a d i m i r
2004-09-02 15:53
2004.10.03
Запрос SQL


14-1095184236
jack128
2004-09-14 21:50
2004.10.03
Выведи своего бульдога :-)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский