Howdy,
Did you write the DLL yourself ? If so, Delphi needs 'ShareMem' as the first unit in both your library and project's uses list if you return strings from functions in your DLL. When you create a new DLL project, Delphi actually includes a warning about this in the project. Hope this helps.
WB