pdScript
pdScript (Precision Delphi Script) is a standalone executable interpreter of Pascal Script language, with a native support for graphical user interface.
It is provided also in the form of dynamic-link library, which is a good option for incorporating the plug-ins mechanism (add-ons, extensions) directly into your application (for example, "pdScript IDE" uses this library to support IDE extensions).
pdScript is based on the "RemObjects Pascal Script engine" and allows you to use the standard types, classes, routines and components of the Delphi development environment, as well as functions from dynamic-link libraries (DLLs).
pdScript uses Delphi forms (DFM) as resources for graphical user interface of your scripts, so the definition of required GUI is easy, fast and can be realized in any compatible environment (pdScript IDE, Delphi, Lazarus, etc.).
pdScript interpreter allows you to execute your scripts (PAS, DPR, ROPS, DPAS, and similar files) directly from Windows environment or from the command-line (by specifying the script file as a parameter for "pdScript.exe" application). By using embedded pdScript library, you can also execute dynamically created scripts (by passing the code and the form definition as arguments of an appropriate library function).
So the pdScript can be used as an independent (external) extension for your own products, no matter if they are written in Delphi, C++, or other language.
Calling conventions
- Command-line
Enter the pdScript interpreter executable, path to the script file and the script parameters - Desktop shortcut
Define the shortcut a similar way as if the pdScript was called from the command-line - Windows environment
When your script file extensions (suffixes) are registered with the pdScript interpreter (that is by default after installation), you can simply double-click the script file to execute it - ShellExecute function
Implement a call to the pdScript into your application a similar way as if the pdScript was called from the command-line. pdScript will return the exitcode you specify in the script and it can also return its output via StdOut. - Dynamic-link library (embedded interpreter)
Use functions from pdScript DLL libraries to execute the scripts. They allows you to get back the exit code result, as well as the script output. DLLs contain also the "inline" functions, so you can pass your code and/or DFM forms directly (not by pointing to the script file). Callbacks to the host application are also supported. Easy to use pdScriptAPI.pas unit is provided for Delphi developers.
pdScript components
- pdScript.exe - full featured interpreter, that supports VCL forms and components
- pdScriptCL.exe - console interpreter, that does not support VCL, but it can be used also in a server mode (when no user is logged on)
- pdScriptE.dll - full featured interpreter in the form of dynamic-link library
- pdScriptECL.dll - interpreter without the VCL support, in the form of dynamic-link library
- Library - a folder named "Lib" (in pdScript installation location) serves as a library for predefined code snippets, that you can use in your scripts (of course, from your script you can refer to the code snippets, that are located also in other folders)
- Pascal scripts - folder with examples and other predefined scripts
- Help - folder with documentation files for pdScript
- API - folder with easy to use predefined APIs for embedded interpreters
Database connectivity
pdScript interpreter uses two technologies to access databases:
- Microsoft ADO (ActiveX Data Objects) - generally available technology, using OLEDB / ODBC drivers
- Embarcadero dbExpress - connect by using Embarcadero's dbExpress drivers
Command-line syntax
pdScript.exe <script-file> ["/pds{<options>}"] [script-param-1 [script-param-2] [...]]
Detailed description is available in the help reference, as well as complete description of pdScript DLL Interface (API) for embedded interpreter.
Scripting language features
pdScript is a well documented product. Programmer's reference, command-line syntax and DLL Interface description of the pdScript can be found in the online help, as well as in the complete help reference installed with the product (in CHM format). Functions, types and classes, that are well known from Delphi/Pascal programming language, are not described in the pdScript help, but their syntax is provided. All the specific functions, types and classes are provided with description.
Examples
Installation packages contain sample scripts, examples for using DLL interface (written in Delphi), and other examples of using the pdScript interpreter (among others, there are also examples of cooperation with the newLisp interpreter).
License and distribution
pdScript interpreter is distributed as a FREEWARE. You can also include it freely into your product distribution packages, whether in the form of a full installation, or as a stand-alone EXE or DLL (depending on which interpreter variant you want to use).
Note: Please, do not confuse the pdScript with other "embeddable" interpreters, that are compiled and explicitly linked into the host application (such as for example RemObjects Pascal Script engine is). The primary goal of pdScript was to work independently and to provide users and developers with a comfortable and easy to use environment to solve the current and/or recurring tasks for which it is not necessary to create and compile (or is too complicated to distribute) an executable applications. Now (when the pdScript is available also as a DLL) it can be used as an embedded Pascal Script interpreter too, but it is still independent, and you don't have to link it explicitly into your application.
JS SiteSearch Generator
X-SQLT
Precision Builder Express
Precision Helper
Precision Language Suite
Technical support
Precision Competitions
Draw Designer
pdScript / pdScript IDE
TagCloud for VCL
DecoCharts for VCL
Send your comments to www pages.
Narodnich mucedniku 447
738 01 Frydek-Mistek
Czech Republic

















