Client Frequently Asked Questions


Can we use a RemObjects SDK Client with an IntraWeb Server?

Yes. Check out the ServerController's ComInitialization property.


How to use live data during design time, if server requires login?

To perform a login procedure in design time, you can use Get Design-Time Data option from popup menu of a table. This option will allow you to setup your ''LoginService'', choose its login method and provide login parameters.

Another option is to use TRODesigntimeCall component, its advantage that it is no necessary to enter login info each time. For its use you should first add one more TRORemoteService component and specify ServiceName property to point to you login service. Then you add TRODesigntimeCall, and specify a method which it should call for authorization and fill its parameters. After adjustment you can use Make Call option from popup menu of the TRODesigntimeCall component to login.


What server files are needed to recompile client application?

Only the _Intf file is needed for the client.

Alternatively, supply the RODL, from which the client developer can re-import and generate the Intf.


Why do I get an 'Unknown class '...' found in stream.' exception when a structure is received from server in non-.NET platform (ie Compact Framework, Silverlight, WindowsPhone7, MonoTouch etc) clients?

You have to manually register assemblies containing received complex type(s) on application startup:

RemObjects.SDK.TypeManager.TypeAssemblies.Add(typeof(SpecifiedStruct).Assembly);

See also Why TypeManager.TypesAssembly is not assigned for non-.NET platforms (ie Compact Framework, Silverlight, WindowsPhone7, MonoTouch etc)?


Why does .NET client fail to connect to Delphi-based server using TargetUrl like http://localhost:port ?

RemObjects SDK .NET client uses IPv6 address which nowadays isn't supported by default in Delphi servers. There are two ways to solve the problem:

  • Edit c:\windows\system32\drivers\etc\hosts file by adding there line:
127.0.0.1       localhost

In this case localhost will be resolved to 127.0.0.1

Please note that administrative privileges are required to edit this file. Also be careful while editing this file - damaging or improper editing of it can make your system unstable.

  • Use http://127.0.0.1:8099 address instead of http://localhost:8099.