У меня есть клиент-серверное приложение, встроенное в Delphi 7 и RemObjects SDK.Сообщения между клиентом и сервером являются двоичными (http://wiki.remobjects.com/wiki/BinMessage).. Мои вопросы: 1) если я заполню данные TDataSet / TDataSource и отправлю их от клиента к серверу, на компоненте DataSet компонента сервера будут содержаться данные?данные должны оставаться постоянными нет?2) Я пытался отправить компонент через RemObjects, инкапсулированный в класс-потомок TROBinaryMemoryStream, но без успеха
определение класса
TRODataSource=class(TROBinaryMemoryStream)
private
FNameDS:String;
FDS:TDataSource;
procedure SetName(aValue:String);
procedure SetDS(aValue:TDataSource);
public
published
property Name:String read FNameDS write SetName;
property DataSource:TDataSource read FDS write SetDS;
end;
метод, который отправляет источник данных
function foo(aDataSource: TDataSource):integer;
var
wStream:TRODataSource;
begin
wStream:=TRODataSource.Create;
wStream.Name:='TEST';
wStream.DataSource:=aDataSource;
try
Result:=(RORemoteService as ISvc..).foo1(wstream);//method existing on the server will //return how many records are in the dataset
finally
freeandnil(wstream);
end;
end;
любой ответ будет оценен.
LE: кажется, что только классы-потомки TROComplexType могут быть сериализованы http://wiki.remobjects.com/wiki/Remote_Object_Allocation_and_Serialization. Но я не уверен, что не могу сериализовать компонент напоток.