Problem with calling Delphi RO server from .NET client after upgrading to RO 10.0.0.1621

Hi RemObjects

After having upgraded to RO 10.0.0.1621 I can no longer call operations with array of string parameters from .NET clients - However I am able to call the method from a Delphi client.

The problem occurs inside this routine: procedure TROSerializer.Read(const aName: string; aTypeInfo: PTypeInfo; var Ptr; ArrayElementId: Integer = -1; Attributes: TParamAttributes = [ ]); in “uROSerializer”.

I am running Delphi 12.2 and Visual Studio 2022 LTSC 17.8

I wrote a small server to isolate/demonstrate the problem the - i have inserted the rodl for that below.

Thanks in advance
Christian

{
  "Name": "NewLibrary",
  "ID": "{CDDF86A0-F1AA-441E-A8A8-311E37E4F5AA}",
  "Version": "4.0",
  "Services": [
    {
      "Name": "NewService",
      "ID": "{D195D73D-6FFD-4599-B279-1C33E2678C2B}",
      "RequireSession": true,
      "Operations": [
        {
          "Name": "TestArray",
          "Parameters": [
            {
              "Name": "Result",
              "DataType": "Utf8String",
              "Flag": "Result"
            },
            {
              "Name": "fields",
              "DataType": "TArrayOfString"
            }
          ]
        }
      ]
    }
  ],
  "Arrays": [
    {
      "Name": "TArrayOfString",
      "DataType": "Utf8String"
    }
  ]
}

Hi,

I can reproduce this issue.

as a temporary workaround, add {$DEFINE CODEGEN4_SKIPGENERICARRAYS} into RemObjects_user.inc, close Delphi IDE and launch install_DA.cmd (or install_RO.cmd) from C:\Program Files (x86)\RemObjects Software\Build folder with admin rights

Logged as bugs://D19635.

bugs://D19635 was closed as fixed.

Thank you for prompt action :+1: