• LMD ScriptPack 2016
Order Links (switches to order page)
Downloads (switches to download page)
ScriptPack Mapping Demo
Scripted Notepad Demo
Script Debugger Demo
Components of LMD ScriptPack 2016
New in version 5.1
- Includes VCL script component and helper classes wich enables Delphi/CBuilder applications to support active scripting languages installed in Windows Scripting Host (VB Script, JScript, etc);
- Allows to run scripts from application and to share any application object inherited from TPersistent with script interpreter engine;
- Includes integrated debugger for supported script languages;
- Full sourcecode of library;
- Extensive demo projects with sourcecode;
- Free updates via Internet
- A Site License covers unlimited number of developers in same organization at one location
- Free technical support via forum (forum.lmd.de), e-mail, fax or mail
- Also available as part of LMD IDE-Tools or LMD VCL Complete.
New in version 4
- New PascalScript Language support added. Unlike the previously MS ActiveScripting based languages this is a 100% native VCL implementation without need of external dlls. The PascalScript engine includes an optimizing byte code compiler and very fast interpreter. The PascalScript language is a dynamic Variant based script language that supports most of the Delphi Pascal expressions and statements like
- procedure/function declarations
- const/var/out parameters
- global/local variables and constants.
- Extended support of exception handling, e.g. raise, try-except and try-finally statements; real Delphi exceptions are raised internally that allow to test an exception class in handler, e.g. on E: EZeroDivide do.
- The PascalScript CodeObject engine implements a secret interface (in addition to IDispatch) that allows very fast interoperations between connected script controls. Besides that execption processing can be made transparent between connected script controls.
- Native script operators such as 'is', 'in', '@' and set constructors, e.g. [akLeft,akTop] allow to work with imported Delphi objects, instead of provided to ActiveX scripts special functions (e.g. SetMake, SetEmpty, ClassIs, EventMake, ect.). Like for the ActiveScripting based languages import units of your Pascal units can be created. Import units for the VCL are shipped with each copy of ScriptPack.
- New three step initialization of ScriptPack Control. New Prepare, Open and Close methods and a State property was added. In addition the new 'Prepared' intermediate state was introduced. In this state all source code is already parsed, but no global code is executed yet (CodeObject is already acessible in this state). This new feature allows circular dependencies between script controls even in case when global code is used (hence handling several scripts at the same time is simplified enormously). In simple cases a call to Prepare method can be ommitted. Finally the ACloseOnRuntimeError parameter was added to the Open method to allow leaving script control opened in the case that runtime errors occured during global code execution.
- New exception handling replaces Last ScriptError concept. Script control includes now the encoded source (reference to script control), error line and position information in exception messages (e.g. in string form). The LMDDecodeErrorMessageInfo procedure allows to decode this information for advanced applications.
- New optimized Delphi memory manager proxy allows to detect finalized object destructions. E.g. all subsequent access to IDispatch object wrapper will report 'Object has been destroyed' exceptions instead of unsafe Access Violations. This feauture is especially used by working with exceptions in PascalScript, because exception objects are automatically destroyed by the interpreter.
- New prepared expressions/statements feature was added to optimize Eval and ExecuteStatement methods. If the same expression/statement need to be executed many times then it is more efficient to Prepare it first and then use Eval and ExecuteStatement overloadeds methods that take prepared objects as parameters. Note: Most speed gain will be seen in native PascalScript implementation, because all other ActiveX script implementations do not support this feature internally.
- New Create constructor and Copy method are implicitly generated in wrappers for Delphi record types to allow creating and copying records more naturally.
- Unicode support for NT-based systems!
- New component: TLMDScriptDebugger - provides true multi-module multi-language debugging capabilities for the script controls.
- Other minor new helpful additions and integration code for LMD IDE-Tools support.
- Combined helpfile for all IDE-Tools packages (IDE Integration package, Designpack, ScriptPack and SyntaxEdit).