# \[Fatal Error\] '' is not a valid GUID value while upgrading to RemObjects Remoting SDK for Delphi - 9.3.105.1337

**URL:** https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301
**Category:** Remoting SDK
**Created:** [January 17, 2018, 3:58am UTC](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301 "2018-01-17T03:58:36Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![jiten.g.s001](https://talk.remobjects.com/letter_avatar_proxy/v4/letter/j/3ab097/32.png) [@jiten.g.s001](https://talk.remobjects.com/u/jiten.g.s001)
#### Post date: [January 17, 2018, 3:58am UTC](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301/1 "2018-01-17T03:58:37Z")

</div>

Hi,

We have a legacy project in Delphi 7 and we are upgrading to Delphi Tokyo. We have installed Delphi Tokyo and RemObjects Remoting SDK for Delphi - 9.3.105.1337.

When I open my Delphi 7 application in Delphi Tokyo and compile then suddenly I get following error.  
**‘’ is not a valid GUID value**  
**[Fatal Error] ‘’ is not a valid GUID value**

And I am getting that same error when I try to open **Service Builder** from Delphi IDE to check the library details

 ![rem-compile-error1](https://talk.remobjects.com/uploads/default/original/2X/d/d7640b2ea652cdc7a49cce73e2df71fa063898d5.png) ![rem-servicebuilder-error1](https://talk.remobjects.com/uploads/default/original/2X/2/2cfafbc1964fda36b00ab9709df6fddc1e0ee45a.png).

**I also checked following link of same kind and Recompiled BuildPackages\_D25.groupproj manually in IDE but no success. Still I am getting same error when I compile my project.**

> [@\[Fatal Error\] '' is not a valid GUID value](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value/15188/2):
>
> Can you specify a bit more details about it. what version of Delphi you are using what unit and line generates it? just for checking - under 9.3 you mean 9.3.105.1351 ?

Please help me. I have attached image file also.

---

<div class="post-metadata">

### Author: ![EvgenyK](https://talk.remobjects.com/user_avatar/talk.remobjects.com/evgenyk/32/16_2.png) [@EvgenyK](https://talk.remobjects.com/u/EvgenyK)
#### Post date: [January 17, 2018, 9:08am UTC](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301/2 "2018-01-17T09:08:14Z")

</div>

can you attach your .RODL here or send it directly to support@, pls?

---

<div class="post-metadata">

### Author: ![jiten.g.s001](https://talk.remobjects.com/letter_avatar_proxy/v4/letter/j/3ab097/32.png) [@jiten.g.s001](https://talk.remobjects.com/u/jiten.g.s001)
#### Post date: [January 19, 2018, 7:01am UTC](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301/3 "2018-01-19T07:01:51Z")

</div>

Thanks for the reply.

Sorry EvgenyK, I cannot attach that file here as my client refused to attach. But following are little detail about the **RODL Intf, Invk and Impl** file details…

 ![rodl_intf](https://talk.remobjects.com/uploads/default/original/2X/5/577172aaee30ca8d4b79a764b56cc904e3954a9c.png)

 ![rodl_invk](https://talk.remobjects.com/uploads/default/original/2X/4/4651e0752d19a7b69d8602ccc932386c6d157840.png)

 ![rodl_impl](https://talk.remobjects.com/uploads/default/original/2X/d/d3770dd501dab1422f1bb1a3a35aa424350cfd6f.png)

Actually I found that if I create a new RODL file then it would work fine. But when I upgrade the RODL file from Remobjects SDK old version in Delphi 7 to new version 9.3.105.1337 in Delphi TOkyo then only I get that error.

any solution…Please..

---

<div class="post-metadata">

### Author: ![EvgenyK](https://talk.remobjects.com/user_avatar/talk.remobjects.com/evgenyk/32/16_2.png) [@EvgenyK](https://talk.remobjects.com/u/EvgenyK)
#### Post date: [January 19, 2018, 7:45am UTC](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301/4 "2018-01-19T07:45:08Z")

</div>

Looks like, your RODL is broken - it has some problems.  
it was a reason why I asked for your RODL.

if you have old version of ROD - try to open your RODL in ServiceBuilder of that version and check it for errors (Tools-\>Check Library for Problems) and fix them.  
Later try to open it in Service Builder v9.3

---

<div class="post-metadata">

### Author: ![EvgenyK](https://talk.remobjects.com/user_avatar/talk.remobjects.com/evgenyk/32/16_2.png) [@EvgenyK](https://talk.remobjects.com/u/EvgenyK)
#### Post date: [January 22, 2018, 12:41pm UTC](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301/5 "2018-01-22T12:41:28Z")

</div>

pls open your RODL in any text editor like `Notepad` and add `UID="{guid}"` for your services.

old:

```auto
<Service Name="MyGlobalSerivce">

```

new:

```auto
<Service Name="MyGlobalSerivce" UID="{4B2AB991-DB76-48D0-9BD0-BAB10B3E2612}">

```

note: you can use the same UID here and change it later in ServiceBuilder:

 ![Untitled](https://talk.remobjects.com/uploads/default/original/2X/2/25ed1cbc2863394315fee2bddc3bca691e7e157c.png)

---

<div class="post-metadata">

### Author: ![ck](https://talk.remobjects.com/user_avatar/talk.remobjects.com/ck/32/8740_2.png) [@ck](https://talk.remobjects.com/u/ck)
#### Post date: [January 25, 2018, 6:09am UTC](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301/6 "2018-01-25T06:09:08Z")

</div>

– Forwarded reply from customer:

Hi EvgenyK,

Thanks lot for the reply. It solved that error and now I am able to open that RODL file in new Service Builder.

But I got following new errors after upgrade.

error E2291: E2291 Missing implementation of interface method MyGlobalSerivce.GetClientAppInfo

Actually I found that after upgrade in new Interface units it changed the String type to ANSIString and WideString type to UnicodeString . And it skipped Implementation unit generation during build.

MyGlobalSerivce.GetClientAppInfo structure

In Old  
function GetClientAppInfo(const sAppName: String; out sVersion: String; out FileDateTime: DateTime; out sMessage: Widestring): Boolean;

In New now  
function GetClientAppInfo(const sAppName: ROAnsiString; out sVersion: ROAnsiString; out FileDateTime: DateTime; out sMessage: UnicodeString): Boolean;

So my question  
Is it correct or I need to do some settings in RODL file.

I guess this changes are because of Unicode changes in latest Delphi version. But in latest Delphi version also String is supported as its now Unicode.  
Please correct me if I am wrong.

And I also noticed that new version created some more classes. I have attached the files created in Delphi 7 and Delphi 10 Tkoyo.

Please help me last time.

Thanks,

---

<div class="post-metadata">

### Author: ![EvgenyK](https://talk.remobjects.com/user_avatar/talk.remobjects.com/evgenyk/32/16_2.png) [@EvgenyK](https://talk.remobjects.com/u/EvgenyK)
#### Post date: [January 25, 2018, 8:01am UTC](https://talk.remobjects.com/t/fatal-error-is-not-a-valid-guid-value-while-upgrading-to-remobjects-remoting-sdk-for-delphi-9-3-105-1337/15301/7 "2018-01-25T08:01:29Z")

</div>

it is correct. You are migrating from RO2 to RO9.

In RO2, `String` type meaned `AnsiString` and `WideString` type meaned unicode data.  
in RO9, we use `UnicodeString` instead of `WideString` because this type isn’t supported on mobile platforms.

it is a reason, why compiler fails with `E2291`.

from `uROEncoding.pas`:

```auto
type
  ROAnsiString = string;

```

`ROAnsiString` type shows that this parameter will be serialized as AnsiString.

I can suggest just copy service declaration from \_Intf and paste to \_Impl, i.e. replace

```auto
    function Sum(const A: Integer; const B: Integer): Integer;
    function GetServerTime: DateTime;
    procedure GetClientAppInfo(const sAppName: String; out sVersion: String; out FileDateTime: DateTime; out sMessage: Widestring);

```

with

```auto
    function Sum(const A: Integer; const B: Integer): Integer;
    function GetServerTime: DateTime;
    procedure GetClientAppInfo(const sAppName: ROAnsiString; out sVersion: ROAnsiString; out FileDateTime: DateTime; out sMessage: UnicodeString);

```

> [@](#):
>
> And I also noticed that new version created some more classes. I have attached the files created in Delphi 7 and Delphi 10 Tkoyo.

we deprecated `_Async` file and put async classes into `_Intf`
