Das problem liegt erstmal in dem dynamischen Array, dadafür von der
DLL Speicher reserviert wird, welcher (ohne einen SharedMemoryManager) nicht in anderen Modulen (also der EXE) verwendet werden kann (da der Speicher ja einem anderem MemoryManager gehört, kann der MemoryManager der EXE diesen nicht verwalten) und eventuell gibt's dann ja auch noch ein Problemchen mit der
RTTI des dynamischen Arrays.
Außerdem kann es locker noch zu problemen bei der Recordausrichtung kommen, vorallem wenn der Compiler in der
DLL anders ausrichtet, als in der EXE (würde dir daher in diesme Fall schonmal zu packed Record's raten)