Delphi 11 update 3, Remobjects SDK 10.0.0.1559

I have ported my source on delphi 11.3 with new remobjects pckages, when i activate the TROSuperTCPServer at runtime o at designtime i have an exception.
I have loaded your Chat Super TCP Server sample and at design time when i activate the server i have the same exception, at runtime disappear.

Hi,

Can you specify what exception do you have, pls?

Note: Server isn’t designed to work in design-time.

Can you test the MegaDemo sample (Delphi) , pls?


Edit: this change removes AV at activation server in design-time

  • update uROServer.pas as
procedure TROServer.RebuildServices;
..
begin
  if (csDesigning in ComponentState) then Exit; //<< added
  • close Delphi IDE
  • launch C:\Program Files (x86)\RemObjects Software\Build\install_RO.cmd (or install_DA.cmd) with admin rights for rebuilding packages

Logged as bugs://D19333.

bugs://D19333 was closed as fixed.

the eception at runtime is raised here

function isROService(aClass: TClass): Boolean;
begin
Result := aClass.InheritsFrom(TRORemotable) or
aClass.InheritsFrom(TRORemoteDataModule);
end;

called from

procedure TRTTIServerCache.InternalRebuildServices;

called from

procedure TRORTTIRODLReader.DoReadRODLResource(Dest: TStream; aServiceGroup: string = ‘’; aIgnoreErrors: Boolean = False);

procedure TROServer.RebuildServices;

megademo run ok!

Hi,

  • update uROBSON.pas as
uses
..
  uROEncoding, uROExceptions; //changed

  EROBSONException = class(EROException); // changed
  • close Delphi IDE
  • launch C:\Program Files (x86)\RemObjects Software\Build\install_DA.cmd (or install_RO.cmd) with admin rights

The problem is runtime packages
I have the server that loads several dll with services, the only runtime packages is rtl.
If i run the server without runtime package works fine. if i run with some runtime package raise the previous exception?
How can i adjust this runtime packages to have a server that loads several dll with ro service inside?

Hi,

Can you confirm that this workaround doesn’t work if server complied with runtime packages, pls?


If you have the Hydra product, you can use RO/DA service as a plugin.

We have several samples:

  • Remoting SDK Modular Server - Remoting SDK service is embedded into a plugin
  • Remoting SDK Plugin Server - Remoting SDK server is embedded into a plugin

this is ok

This samples are avaible only with Hydra?
I do not have Hydra where can i found samples that drive me to a solutions?
With delphi 10.1 and RO 10.0.0.1495 and only this run time packages RemObjects_Core, RemObjects_Server, RemObjects_Synapse, RemObjects_Server_Synapse work fine!!

Hi,

yes. only Hydra can merge several RODLs to one

You can test trial version of Hydra in virtual machine.

Can you retest .1559 with my fix, pls?

seems to start working, now some services the client can see them, but not all those present in a dll

Hi,

as for me, they shouldn’t work w/o Hydra
do you want to say, that these services (in a dll) worked as expected in 1495?

Yes, with Delphi 10.1 and RO 10.0.0.1495 these services worked as expected!
I can’t update delphi and RO because of this!

Hi,

What server-type are you using: RODL-based or CodeFirst one?

RODL-based

Hi,

do these steps:

  • add {$UNDEF RO_RTTI_Support} to RemObjects_user.inc
  • launch C:\Program Files (x86)\RemObjects Software\Build\install_RO.cmd (or install_DA.cmd) with admin rights for recreating packages

it will disable RTTI support so packages should work the same as in .1495

sorry but i can’t disable codefirst because many services are codefirst!

sorry are codefirst and rodl-based