Параметры метода DataSnap XE2 и TStream
Я работаю над проектом DataSnap в Delphi XE2, используя протокол TCP / IP, который должен передавать поток двоичных данных на сервер в качестве параметра метода. Проблема, с которой я сталкиваюсь, заключается в том, что, как представляется, существует ограничение в размере около 32 КБ для содержимого потока. За пределами этого лимита поток, полученный на сервере, пуст. Если я передаю дополнительные параметры метода, они приходят неповрежденными, так что это кажется проблемой на уровне параметров.
Вот как объявляется класс сервиса DataSnap:
TDataSnapTestClient = class(TDSAdminClient)
private
FSendDataCommand: TDBXCommand;
public
constructor Create(ADBXConnection: TDBXConnection); overload;
constructor Create(ADBXConnection: TDBXConnection; AInstanceOwner: Boolean); overload;
destructor Destroy; override;
procedure SendData(Data: TStream);
end;
Подход, который я использую, должен работать, по крайней мере, согласно статье Джима Тирни. Тем не менее, очевидно, что с Delphi 2009 произошли изменения, которые нарушили пример кода Джима Тирни.
Параметры потока метода сервера DataSnap
Будем весьма благодарны за любые идеи о том, как решить эту проблему.