On 14/04/2021 17:49, Alfred via fpc-devel wrote: > The mORMot[1] sources could give you some info. > During runtime, it patches the exe-memory to redirect function calls. > Hard part was to get around the W^X memory protection on some BSD's. > > Look at: > > procedure PatchCode(Old,New: pointer; Size: integer; Backup: pointer; > inside SynCommons.pas > > function TInterfaceFactory.GetMethodsVirtualTable: pointer; > inside mORMot.pas
Please don't use that kind of hacks. It also breaks in case WPO is used and some calls get devirtualised at compile time. Jonas _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel