Вниз
Скачать: CL | DM;

Передача Класса, Записи по сети???   Найти похожие ветки 

← →
hogus   (2002-07-13 14:41) [0]

Возможно ли в Делфе передача классов или записей по срадствам WinAPI или стандартными Делфевыми сокетами?????


← →
Anatoly Podgoretsky ©   (2002-07-13 15:03) [1]

Еще бы понять, что ты под этим подразумеваешь, я про классы, с записями понятно, непрерывный блок байт, соответственно и стандартные методы передачи


← →
hogus   (2002-07-13 15:08) [2]



Ладно сорри, не правильно поставил вопрос... КАК ЭТО Сделать???

Stream"ом что ли????


← →
Digitman ©   (2002-07-15 11:53) [3]

Да, поток наиболее подходит для этой задачи.

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

Задача трансляции некоего объекта по некоему каналу передачи данных сводится к передаче его (объекта) свойств. Свойства же имеют конкретные типы.
Т.о., при передаче объекта следует последовательно (в заранее определенном порядке) записать в транспортный поток данных, передаваемый приемнику:

- идентификатор класса объекта,
- количество передаваемых свойств,
- имена свойств,
- иденентификаторы типов свойств,
- значения св-в

Все это определяет некую "уникальность" данного объекта (иными словами - его описание) и позволяет принимающей стороне воссоздать копию объекта по переданному его описанию.

Принимающая сторона должна, разумеется, "знать" формат передаваемой последовательности, описывающей объект.

- получив идентификатор класса, приемник создает в своем АП соответствующий экземпляр - "шаблон"

- получив следом идущий список описателей свойств, приемник в соответствии с ним назначает соответствующие св-ва "шаблону"

Абстрактный класс TStream имеет некоторые встроенные автоматизированные средства для поточного чтения/записи объектов класса TComponent. Поточные методы WriteComponent/ReadComponent реализуют автом.запись/чтение published-свойств передаваемых/воссоздаваемых TComponent-объектов. Вспомогательные классы TFiler, TReader/TWriter позволяют указать дополнительные св-ва (кроме published), предназначенные к поточной трансляции в произвольно задаваемой последовательности.

Теперь - трансп.уровень.

Задача передающего гнезда - получив в кач-ве параметра поток, описывающий один или более объектов, передать его целиком просто как блок неких данных известного размера

Задача принимающего гнезда - приняв некий поток данных некоего размера, "превратить" его в Stream и передать на вход алгоритма интерпредации принятого потока, который, собственно, и воссоздает один или более объектов по инф-ции, последовательно считываемой из этого потока.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.009 c
3-61017
maxim2
2002-08-30 08:07
2002.09.19
При создании запроса как можно узнать номера записей ...


1-61172
Serbor
2002-09-07 22:25
2002.09.19
Тип файла


14-61298
^Sanya
2002-08-20 02:21
2002.09.19
Просьба оценить дизайн сайта


3-61009
PP
2002-08-29 11:55
2002.09.19
Подсоединение через интернет к ИБ6


14-61277
VictorT
2002-08-23 13:42
2002.09.19
Кодировка




   Наверх