Disabling the RTTI support fixed the AV. I’m rebulding the app where I added the HTTPApiDispatcher to see if it works now with this (I added the OnGetRODLReader method also to the HTTP Server)…
Ok, it works. I’m getting other errors related to the new modifications (InOut and Out parameters not allowed for HTTP API) but it’s progress.
I was at first not able to reproduce the error with the test case. I thought at first that it might be related to the C++ Linker option to include Delphi Runtime RTL (which by default is unchecked) but it did not change anything enabling it.
Then I noticed that the resulting exe was still being too big, and unfortunately, the problem is that the IDE is not very smart about doing what needs to be done to link the packages truly as runtime packages. So I did what I do on my apps:
#pragma link "RemObjects_Core_D28.BPI"
#pragma link "RemObjects_VCL_D28.BPI"
#pragma link "RemObjects_Server_D28.BPI"
#pragma link "RemObjects_Server_VCL_D28.BPI"
#pragma link "RemObjects_Indy_D28.BPI"
#pragma link "RemObjects_Server_Indy_D28.BPI"
Add this to the Unit1.cpp file and then you will get the errors I get (and you will notice that the resulting exe is now around 270Kb, instead of the 2,000+ it was before).
In my case it’s a necessity to have real runtime packages, as I have several BPLs on the projects that depend on the libraries/componentes I use.
I’ll see if maybe modifying the project to include also the libs around make the error go away, but hopefully you will be able to reproduce the error with this small change.