Using Delphi XE7+ DLLs from Delphi7
The only reasonable method I've found so far:
Isolate XE7 DLLs so that they are self-sufficient and you can pass data via WideStrings. (TClientDataSet helps with that)
use MidasLib inside the DLL. This will bundle MidasLib.dcu into your DLL project, which will prevent the DLL hell between Delphi7 and XE7 versions during deployment.
Use WideString on both sides of code. On Windows, WideString is implemented via WinAPI's BSTR and it is compatible between implementations.
Use ShareMem on both sides of code. You need this in order to load and free the DLL handle without getting access violations.















