Форум: "Сети";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизПосылка/прием сложных данных c помощью сокетов Найти похожие ветки
← →
palan (2004-03-18 16:09) [0]Иногда необходимо пересылать по сети не только простые текстовые сообщения, но и сложные структуры (тип record в Паскале)
Напишите пример пожалуйста !!!(Как это будет выглядеть в среде Delphi)
← →
palan (2004-03-18 16:09) [0]Иногда необходимо пересылать по сети не только простые текстовые сообщения, но и сложные структуры (тип record в Паскале)
Напишите пример пожалуйста !!!(Как это будет выглядеть в среде Delphi)
← →
Reindeer Moss Eater © (2004-03-18 16:25) [1]Сначала пример конкретного record"а
← →
Reindeer Moss Eater © (2004-03-18 16:25) [1]Сначала пример конкретного record"а
← →
Reindeer Moss Eater © (2004-03-18 16:48) [2]type
TMyRec = record
W : word;
I : integer;
s : shortstring;
end;
TAnotherRec = record
C : Cardinal;
S1,
S2 : string;
D : Double;
end;
procedure TForm1.FormCreate(Sender: TObject);
var m : TMyRec;
a : TAnotherRec;
len : dword;
begin
//шлем м
ClientSocket1.Socket.SendBuf(m,sizeOf(TMyRec));
//шлем а
ClientSocket1.Socket.SendBuf(a,SizeOf(Cardinal));
len := Length(a.s1);
len := len shl 16;
len := len + Length(a.s2);
ClientSocket1.Socket.SendBuf(len,SizeOf(DWORD));
ClientSocket1.Socket.SendText(a.s1+a.s2);
ClientSocket1.Socket.SendBuf(a.d,SizeOf(Double));
end;
← →
Reindeer Moss Eater © (2004-03-18 16:48) [2]type
TMyRec = record
W : word;
I : integer;
s : shortstring;
end;
TAnotherRec = record
C : Cardinal;
S1,
S2 : string;
D : Double;
end;
procedure TForm1.FormCreate(Sender: TObject);
var m : TMyRec;
a : TAnotherRec;
len : dword;
begin
//шлем м
ClientSocket1.Socket.SendBuf(m,sizeOf(TMyRec));
//шлем а
ClientSocket1.Socket.SendBuf(a,SizeOf(Cardinal));
len := Length(a.s1);
len := len shl 16;
len := len + Length(a.s2);
ClientSocket1.Socket.SendBuf(len,SizeOf(DWORD));
ClientSocket1.Socket.SendText(a.s1+a.s2);
ClientSocket1.Socket.SendBuf(a.d,SizeOf(Double));
end;
← →
Digitman © (2004-03-18 16:50) [3]THardRecord = packed record
iField: Integer;
dtField: TDataTime;
sField: String[10]; //!!
end;
var
hr: THardRecord;
..
ClientSocket.ClientType := ctBlocking; //!!
..
ClientSocket.Socket.SendBuffer(hr, sizeof(hr));
...
ServereSocket.ServerType := stThreadBlocking;
..
procedure TMyServerClientThread.ClientExecute;
var
hr: THardRecord;
begin
..
ClientSocket.ReceiveBuf(hr, sizeof(hr));
..
end;
← →
Digitman © (2004-03-18 16:50) [3]THardRecord = packed record
iField: Integer;
dtField: TDataTime;
sField: String[10]; //!!
end;
var
hr: THardRecord;
..
ClientSocket.ClientType := ctBlocking; //!!
..
ClientSocket.Socket.SendBuffer(hr, sizeof(hr));
...
ServereSocket.ServerType := stThreadBlocking;
..
procedure TMyServerClientThread.ClientExecute;
var
hr: THardRecord;
begin
..
ClientSocket.ReceiveBuf(hr, sizeof(hr));
..
end;
← →
Digitman © (2004-03-18 16:53) [4]
> Reindeer Moss Eater
дальше-то - большая засада)
← →
Digitman © (2004-03-18 16:53) [4]
> Reindeer Moss Eater
дальше-то - большая засада)
← →
Digitman © (2004-03-18 17:01) [5]сейчас выяснится, что фигурируют huge strings, non-blocking async mode ... и понеслось г. по трубам)))
← →
Digitman © (2004-03-18 17:01) [5]сейчас выяснится, что фигурируют huge strings, non-blocking async mode ... и понеслось г. по трубам)))
← →
palan (2004-03-19 10:04) [6]УВАЖАЕМЫЕ МАСТЕРА!!!
Все это хорошо, но не очень наглядно и понятно.
Не могли бы, если вас не затруднить прислать работающие исходники
клиента и сервера по адресу: palan_sob@mail.ru
← →
palan (2004-03-19 10:04) [6]УВАЖАЕМЫЕ МАСТЕРА!!!
Все это хорошо, но не очень наглядно и понятно.
Не могли бы, если вас не затруднить прислать работающие исходники
клиента и сервера по адресу: palan_sob@mail.ru
← →
Reindeer Moss Eater © (2004-03-19 10:12) [7]Уважаемый, ты буквы поста № 1 читал?
← →
Reindeer Moss Eater © (2004-03-19 10:12) [7]Уважаемый, ты буквы поста № 1 читал?
← →
Polevi © (2004-03-19 11:29) [8]>palan (19.03.04 10:04) [6]
а деньги ?
← →
Polevi © (2004-03-19 11:29) [8]>palan (19.03.04 10:04) [6]
а деньги ?
← →
Digitman © (2004-03-19 12:05) [9]
> Polevi © (19.03.04 11:29) [8]
"Я - человек, измученный нарзаном" (с) Монтер Мечников .. в соавторстве с автором поста))
← →
Digitman © (2004-03-19 12:05) [9]
> Polevi © (19.03.04 11:29) [8]
"Я - человек, измученный нарзаном" (с) Монтер Мечников .. в соавторстве с автором поста))
← →
palan (2004-03-19 14:23) [10]Значит не хотите помочь человеку, который второй день ломает голову над этой проблемой?
← →
palan (2004-03-19 14:23) [10]Значит не хотите помочь человеку, который второй день ломает голову над этой проблемой?
← →
Reindeer Moss Eater © (2004-03-19 14:34) [11]...А на четвертый день Зоркий Глаз заметил, что в сарае не хватает четвертой стены ...
У тебя декларацию записи просили.
Припоминаешь, человек с проблемой?
← →
Reindeer Moss Eater © (2004-03-19 14:34) [11]...А на четвертый день Зоркий Глаз заметил, что в сарае не хватает четвертой стены ...
У тебя декларацию записи просили.
Припоминаешь, человек с проблемой?
← →
Digitman © (2004-03-19 14:44) [12]"Искаженный микропленкой ГУМ стал маленькой избенкой,
И уж вспомнить неприлично. чем предстал театр МХАТ .."
(с)
← →
Digitman © (2004-03-19 14:44) [12]"Искаженный микропленкой ГУМ стал маленькой избенкой,
И уж вспомнить неприлично. чем предстал театр МХАТ .."
(с)
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.039 c