Well - guess it's OK, to get all the aspects out in the open.
I haven't used Delphi since it was a Borland product - version 2 if memory servers (it might not!) back in the 80's.
Noticed tho, that GetLastOSError return 32 when trying to open the file with AssignFile or FileOpen.
SysErrorMessage translates this to "File already open" (in Danish here tho...) while
TStringList.LoadFromFile and TFileStream.Create(..., fmOpenRead or fmShareDenyWrite) returns 6 for GetLastOSError, which SysErrorMessage translates to Invalid Handle.
So it seems, that even if it IS compatible with Delphi, there are internal inconsistencies...
Essentially, the FileStream versions returns an incorrect errorcode, when creating the stream fails.