The TPaxInvoke component for Delphi and C++ Builder allows you to dynamically invoke both script-defined (created with paxCompiler) and host-defined methods and global functions. The supported calling conventions are: register (Borland fastcall), cdecl, stdcall, safecall, pascal and msfastcall (Microsoft fastcall). The TPaxInvoke is a part of paxCompiler package, but you can also use it as a stand alone component to invoke any host-defined or dll-defined function. In particular, the component gives you a flexible way to invoke functions with msfastcall convention.
- Support of safecall and msfastcall calling conventions.
- Support of dll-defined functions. (you can use functions supported MS fastcall calling convention as well).
- Support of Currency data types.
- Script-defined callback functions.
- With the TPaxInvoke component you can call script-defined functions in the debugging mode.
- Simplified direct call of script-defined functions (prologue and epilogue by means of TPaxProgram.BeginCall and TPaxProgram.EndCall methods is not necessary now).
- TPaxCompilerExplorer and TPaxCompilerDebugger components.
- Array and record initializers.
- Increased speed of compilation.
- Support of Delphi 2007.
The importer allows you to convert units written in Delphi into imp-files, so types defined in a source unit can be used in your scripts.
- Support of script-defined class types:
- you can create script-defined classes that inherit host-defined classes.
- it is possible to create script-defined event handlers for host-defined events and vice versa.
- virtual and abstract methods are allowed.
- stdcall, cdecl, pascal, register calling conventions.
- Increased speed of compilation.
- You can pause, resume and terminate scripts.
- Run-time line error reporting.
- Support of Int64 type.
- Support of OLE Automation.
New methods and events:
- TPaxProgram.OnPause event
- TPaxProgram.OnHalt event
- TPaxProgram.OnException event
- TPaxProgram.OnUnhandledException event
- TPaxProgram.Pause method
- TPaxProgram.IsPaused method
- TPaxProgram.Resume method
- TPaxCompiler.OnUsedUnit event
- TPaxCompiler.Modules property
- TPaxCompiler.DebugMode property
- Pause standard Pascal function
- Halt standard Pascal function
- WideChar, WideString and Variant types.
- Dynamic arrays.
- Exception handling.
New: Importing Delphi class types and class reference types. You can register host-defined public constructors, methods, fields and properties for paxCompiler. Published properties are registered automatically. Using global registration routines allows you to share registered items with all paxCompiler instances and to decrease footprint of each paxCompiler instance. These routines provide an easy way to create import units (see IMPORT_SysUtils.pas, IMPORT_Classes.pas).