Op 15-09-2022 om 12:55 schreef Petr Kolář:

Thank you very much, Rik.

I finally found that the main problem is in the size_t type. I commented out the line:

   size_t = Cardinal;

Because Cardinal is 4-byte on both 32-bit and 64-bit systems, but the standard defined size_t = ULONG_PTR (=NativeUInt) is 4-byte on 32-bit and 8-byte on 64-bit on WinApi.Windows. And that was the main problem. Changing all variables to pointers using the "@" prefix is not necessary.

It is therefore sufficient to use only the standard size_t type, everything else in synaicnv.pas can remain unchanged..

Ah, yes.
Even the //IGNORE doesn't cause an error now (although it's not supported it's still accepted). It was probably all the changes I tried, that I thought all these were issues.
The default ^size_t from Winapi.Windows.pas was the last change I made.
(and indeed it doesn't need to be a pointer but the duplicate declaration in synaicnv.pas was just wrong)

Glad we got it working with such a minimal change :)

Grtz,
Rik
_______________________________________________
synalist-public mailing list
synalist-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/synalist-public

Reply via email to