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

Вниз

Передача типа рекорд с помощью TCLientSocket/TServerSocket   Найти похожие ветки 

 
RagE ©   (2004-07-14 15:48) [0]

Подскажие плиз как передавать типа record а то у меня какая то лажа приходит. Отправляю с помощью SendBuf принимаю ReceiveBuf
размер структуры 292 байта. Переданная и принятая инфа не совпадают вовсе


 
Digitman ©   (2004-07-14 15:53) [1]

код покажи


 
Анонимщик ©   (2004-07-14 16:04) [2]

Нужно использовать
packet record


 
Григорьев Антон ©   (2004-07-14 16:13) [3]


> Анонимщик ©   (14.07.04 16:04) [2]
> Нужно использовать
> packet record


Это к делу не относится. Неупакованная запись приведёт к лишнему трафику, но не к искажениям.

А может, в записи есть string или динамические массивы?


 
Анонимщик ©   (2004-07-14 16:19) [4]

А если так:

TMyRec = {packet} record
 b: Byte; // 1 байт
 i: Integer; // 4 байта
        end;

var
 aMR: TMyRec;
begin
SendBuf(aMR, SizeOf(TMyRec)); // сколько будет отправлено?
end;

Тогда относится? Проблема - в SizeOf.


 
Reindeer Moss Eater ©   (2004-07-14 16:20) [5]

Тогда относится? Проблема - в SizeOf.

не относится ни грамма.


 
Григорьев Антон ©   (2004-07-14 16:23) [6]


> SendBuf(aMR, SizeOf(TMyRec)); // сколько будет отправлено?


Будет отправлено ровно столько, сколько структура занимает в памяти. Если она не упакована, то в её размер будет включен и размер выравнивающих байт. Главное, чтобы на обеих сторонах выравнивание было одинаковым.


 
Анонимщик ©   (2004-07-14 16:28) [7]

Это смотря как потом заливать.
Ну ладно, будем считать, что я неправильно угадал.


 
RagE ©   (2004-07-14 16:36) [8]

Всем спасибо проблему решил. Вся проблема была в том что я принимал структуру в PChar который мне потом дров и наламывал



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
3-1092947770
Александр333
2004-08-20 00:36
2004.09.19
Generate SQL Sqript


6-1089375941
ilop
2004-07-09 16:25
2004.09.19
Как узнать имена всех компов в сети.


1-1094558392
Прямой
2004-09-07 15:59
2004.09.19
Можно ли главной формой сделать Form2


1-1093959220
antonn
2004-08-31 17:33
2004.09.19
Интернета


14-1093974910
VID
2004-08-31 21:55
2004.09.19
Ищу квартиру в Москве.