Delphi

January 20th, 2019

Certification

Official Embarcadero Documentation

Documentation

Documentation – Firemonkey

Documentation – Reference guide

Documentation – Learning

Documentation – MVC

Game developing

My Tags

News

IDE

  • I-Pascal – a modern open source Object Pascal IDE based on excellent IntelliJ IDEA
  • Free Pascal– информационный портал для разработчиков. Free Pascal Compiler (FPC) – это свободно распространяемый компилятор языка Паскаль с открытыми исходными кодами. Он совместим с Borland Pascal 7 и Object Pascal – Delphi, но при этом обладает рядом дополнительных возможностей.
  • Lazarus (SourceForge)
  • Oxygene is a Next Generation Object Pascal language development environment for creating managed applications for the Common Language Runtime – including Microsoft .NET and Novell’s open source Mono framework – and the Java Runtime Environment – including regular Java and Android.

IDE – Extensions

  • Owly CI – Essential package management tool for Embarcardero Delphi
  • Delphi IDE Theme Editor
  • Delphi Package Tool 1.9.0.140 – tool to compile Package Group files(.bpg/.bdsproj/.groupproj) and automatically install the components into IDE. For D5 to 2010.
  • Castalia transforms the Delphi programming environment into an amazing development platform. Castalia lives on the bleeding edge of IDE technology, giving you cutting edge tools to write better code faster, understand code more accurately, and improve code you’ve already written.
  • DDevExtensions extends the Delphi/C++Builder IDE by adding some new productivity features.
  • The IDE Fix Pack 2009/2010/XE installs is a DLL-Expert that fixes the following RAD Studio 2009/2010/XE bugs at runtime.
  • DelphiSpeedUp is an IDE plugin for Delphi and C++Builder. It improves the IDE’s startup speed and increases the general speed of the whole IDE.
  • The VCL Fix Pack is a Delphi unit that fixes VCL and RTL bugs at runtime by patching the original functions.
  • GExperts is a free set of tools built to increase the productivity of Delphi and C++Builder programmers by adding several features to the IDE.  GExperts is developed as Open Source software and we encourage user contributions to the project.
  • CnPack IDE Wizards (CnWizards) is a Free Plug-in Tool Set for Delphi/C++ Builder/CodeGear RAD Studio to Improve Development Efficiency.
  • XE Distiller – Embarcadero RAD Studio XE packages/experts manager, tweaker.
  • Documentation Insight – help you visually read and write documentation in the Delphi or RAD Studio IDE.  Customize the built-in Help Insight.
  • Object Inspector filter (beta)

Source

  • DelphiDabbler.com is home to a library of Delphi source code, a database of code snippets, various programming articles and hints & tips. There are also several programs.  (DelphiDabbler CodeSnip is a Delphi code snippets repository)
  • Awesome Delphi – A curated list of awesome Delphi frameworks, libraries, resources, and shiny things. Inspired by awesome-… stuff.
  • Delphi.zeef.com – Most useful OPEN-SOURCE Delphi projects and FREE utilities.
  • Исходники DELPHI

Web development

  • xxm enables you to create dynamic websites in Delphi, combining both Delphi and HTML in the source files. The project is compiled into a module, ready for use by a pluggable protocol handler in Internet Explorer, an add-on for FireFox, an ISAPI Extension, an Apache module, with HTTPAPI, or a stand-alone HTTP server. (Perhaps more in the future or by other parties.)

Tools

  • DFM Editor – standalone editor for Delphi Form files (*.dfm) in both binary and text format.
  • Free tools (mitec.cz)

Libraries

  • Joint Endeavour of Delphi Innovators (Project JEDI, see JCL (JEDI Code Library) ) – is a open source project consisted of a worldwide community of developers sharing their efforts and resources to improve Delphi.
  • Spring Framework for Delphi (Spring4D) is an open-source code library for Embarcadero Delphi 2010+ platforms. It consists of a number of different modules, including a Dependency Injection Framework and a Base Class Library (Common Types, Collections Framework, Reflection, Logging). Spring Framework (google code web-site) for Delphi is an international open source project, whose mission is to provide a robust infrastructure framework that will help Delphi developers build solid, flexible and extensible enterprise applications and class libraries based on the Embarcadero® Delphi® 2010 for Win32 platform. Dependency Injection Series (rus).
  • TKBDynamic allows to save/load/get(binary)size/compare any dynamic type with only one line of code. This can be used for example to share data by any IPC mechanism.
  • Fundamentals Code Library – code libraries for Delphi and FreePascal: Unicode, XML, Hash, Huge Integer, Cipher
  • Jaro Benes’s components – library for individual string formatting – jbStr, Components for edit input data, Component TDBF to access DBF table without BDE, Component TLabel3D, Compact, one file oriented database framework TinyDB
  • DUCK DUCK DELPHI – This unit adds simple duck typing to Delphi Objects and provides an RTTI helper class to simplify many common RTTI tasks. Requires Delphi XE2.
  • BigNumbers – BigInteger, BigDecimal and BigRational for Delphi. These are implementations of the multi-precision BigInteger, BigDecimal and BigRational types, built from scratch. (GitHub)

Library – Generic

  • GenericTree – Delphi implementation of a generic Tree structure. This small class allows creating hierarchical structures where each “node” is a small object (20 bytes plus your own data size), containing a property of your desired type. (web)

Library – Config

  • ParamManager – parameters manager library for Delphi applications. ParamManager is class which can be used as singleton to store and read configuration params. It supports values as string and integer and can store values as blobs in a database. It can be used with DataSets and TMS Aurelius for database (remote) persistence. Features: Global, User, Company and User/Company scopes; Local, Remote and Session Persistence; Supports encrypted name/value params; Thread safe.

Library – Logging

  • LoggerPro – An modern and pluggable logging framework for Delphi (GitHub)

Library – Threading

  • OmniThreadLibrary is simple to use threading library for Delphi. Currently, versions 2007, 2009, and 2010 are supported. OmniThreadLibrary is an open source project. It lives in the Google Code and is licensed under the BSD license. (OmniThreadLibrary book)
  • Cromis Threading. Basic threading helper classes and routines: Simple to use task pool, based on thread pool, Task Queue for easy queuing of asynchronous tasks, LockFreeStack based on Windows SLISTS, TThreadSafeQueue based on linked lists.
  • AsyncCalls – Asynchronous function calls. With AsyncCalls you can execute multiple functions at the same time and synchronize them at every point in the function or method that started them. This allows you to execute time consuming code whos result is needed at a later time in a different thread. While the asynchronous function is executed the caller function can do other tasks.

Library – XML

Library – JSON

Library – Algorithms

  • delphi matrix library (Google code) –   this library contains numerous assembler hand optimized base matrix functions as well as many higher order functions like singular value decomposition, matrix inversion, pseudo inversion, LU decomposition and many others. Note the even x64 assembler code is available to grant maximum compatibility.
  • User-friendly Hash Library
  • FastMath – Fast Math Library for Delphi

Libraries – BIOS

  • The SMBIOS (System Management BIOS) is a standard developed by the DMTF. The information stored in the SMBIOS includes devices manufacturer, model name, serial number, BIOS version, asset tag, processors, ports and device memory installed.

Library – WMI

  • The WMI Delphi Code Creator (WDCC), allows you to generate Object Pascal, Oxygene, C++ and C# code to access the WMI (Windows Management Instrumentation) classes, events and methods. Also includes a set of tools to explorer and Query the content of the WMI.

Library – Web/Network

  •  Synapse TCP/IP library – this project deals with network communication by means of blocking (synchronous) sockets or with limited non-blocking mode. This project not using asynchronous sockets! The Project contains simple low level non-visual objects for easiest programming without problems. (no required multithread synchronisation, no need for windows message processing,…) Great for command line utilities, visual projects, NT services and etc.  The SYNAPSE library aims to create a complete library of classes and functions that would markedly simplify application programming of network communication using Winsock.
  • OpenSSL for Indy
  • RemObjects SDK is the award-winning cross-platform remoting framework that makes it easy to build modern applications that communicate and exchange data across the network.
  • Internet Component Suite. ICS is a free internet component library for all Delphi, C++Builder, BDS and RAD Studio versions (win32). It includes TCP, UDP, raw sockets, clients, servers, as well as many high level protocols such as FTP, SMTP, POP3, NNTP, HTTP and more. ICS also support SSL and TLS with the help of OpenSSL.

Library – Script

  • DelphiWebScript (see DWS) – DWScript is an object-oriented scripting language for Delphi, despite its name, it is general purpose and not limited to websites. DWS allows using as well as defining whole new classes (with polymorphism, meta-class support, etc.) using a, object-oriented Pascal syntax. The language is based on Delphi, but also supports syntax and features similar to Prism and FreePascal, as well as various language extensions.
  • Pascal Script is a free scripting engine that allows you to use most of the Object Pascal language within your Delphi or Free Pascal projects at runtime. Written completely in Delphi, it is composed of a set of units that can be compiled into your executable, eliminating the need to distribute any external files. Pascal Script started out as a need for a good working script, when there were none available at the time.
  • FastScript – скриптовая библиотека, содержащая 4 языка программирования (в настоящее время – PascalScript, C++Script, JScript и BasicScript).
  • OP4JS – Object Pascal for JavaScript

Library – LUA

  • VerySimple.Lua is a Lua 5.3 binding for Delphi XE5- XE7 which automatically creates OOP callback functions for Win32, Win64, Mac OS X, iOS and Android. GitHub

Library – Graphics

  • ImageMagick is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and TIFF. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.
  • Synopse fast JPEG decoder – this unit allows very fast JPEG image decoding, using SSE/SSE2 pure assembly code
  • Synopse GDI+ library – by adding the SynGdiPlus unit to your uses clause, some TGraphic descendants are registered in your application to load and save GIF, TIF, PNG and JPG pictures. It also allows anti-aliased drawing from any TMetaFile. That is, you can play a .emf content using GDI+ instead of GDI, for much better rendering result.
  • CCR Exif is a Delphi library to read and write Exif, IPTC and XMP metadata from JPEG, TIFF and PSD images. Also works with Win64 or OS X targets in Delphi XE2, though not iOS (FPC is not supported). (author blog)

Library – Crypt

  • TCiphers
  • DCPcrypt (Delphi Cryptography Package) is an open source library of cryptographic components (encryption algorithms and hash algorithms) for Borland Delphi and Kylix. A little demo is available which is showing how to get PHP and Delphi encryption to work together. The idea behind DCPcrypt is that it should be possible to “drop in” any algorithm implementation to replace another with minimum or no code changes. To aid in this goal all cryptographic components are descended from one of several base classes, TDCP_cipher for encryption algorithms and TDCP_hash for message digest algorithms. DCPcrypt v2 contains full implementations of the following algorithms: Blowfish, Haval, Cast 128, MD4, Cast 256, MD5, DES, 3DES, RipeMD-128, Ice, Thin Ice, Ice2, RipeMD-160, IDEA, SHA-1, Mars, SHA-256, SHA-384, SHA-512, Misty1, Tiger, RC2, RC4, RC5, RC6, Rijndael (the AES), Serpent, Tea, Twofish.
  • Cryptlib (AddOn’s for Delphi programmers) – is a powerful security toolkit which allows even inexperienced crypto programmers to easily add encryption and authentication services to their software. The high-level interface provides anyone with the ability to add strong security capabilities to an application in as little as half an hour, without needing to know any of the low-level details which make the encryption or authentication work.
  • TurboPower LockBox 3 is a Delphi library for cryptography. Currently supported compilers include Delphi 2007 and Delphi 2010. It provides support for AES, DES, 3DES, Blowfish, Twofish, SHA1, MD5, a variety of chaining modes, RSA digital signature. (TurboPower LockBox New – sourceforge.net)
  • AES implementations – list of wiki.
  • Fundamentals Code Library – fundamentals Cipher Library allows encryption, decryption using the following ciphers: AES, DES, RC2, RC4, RSA.
  • Delphidec – Delphi Encryption Compendium (DEC). The DEC is a cryptographic library for Delphi & C++ Builder. Symmetric cryptographic functions: Blowfish, Twofish, IDEA, Cast128, Cast256, Mars, RC2, RC4, RC5, RC6, Rijndael / AES and etc.

Library – DB

  • Synopse mORMot Framework, which is a powerful SOA ORM (formerly named Synopse SQLite3 Framework)
  • Synopse Big Table – an open source Delphi unit for very fast data storage and access, using key/values pairs, or a sophisticated NoSQL multi-field metadata layout. If you need to save raw data on disk, and retrieve it with an unique ID number, string, or any combined fields, you can use this unit, which is much faster than any database engine.
  • TDBF is a freeware native data access component for Borland Delphi, C++Builder and Kylix, and for FreePascal. It allows you to create very compact database programs that don’t need any special installer programs. In fact the code to access your database is compiled in your project executable file. It takes only a few kilobytes in your executable and doesn’t need any other external files to run.

Library – PDF

  • Synopse PDF engine – is an Open Source PDF document creation library for Delphi, embedded in one unit.

Library – Messaging

  • Habari Client libraries provide access to standards-based, enterprise quality solutions for distributed messaging. Delphi applications now can take advantage of open source message broker technology, which is: Distributed, Loosely coupled, Reliable, Asynchronous and build integrated systems, connecting clients using the peer-to-peer or the publish and subscribe communication model. They support the open source JMS message brokers ActiveMQ, HornetQ and OpenMQ, and the open source AMQP message broker RabbitMQ. Available for Embarcadero Delphi 2009 to XE2 (32 and 64 Bit + Mac OS X) and Free Pascal.

Library – Archive

  • TurboPower Abbrevia is a compression toolkit for Delphi, C++Builder, Kylix, and Free Pascal. It supports compressing and decompressing PKZIP, Microsoft CAB, tar, gzip, and bzip2 archives, and can create self-extracting executables. On Windows it also provides Delphi wrappers for the LZMA, Bzip2, and WavPack SDKs, and PPMd decompression. Abbrevia also has several visual controls that simplify displaying and manipulating archives, including treeview and listview components.

Library – Media

  • FMX.Radio – Delphi XE7 Firemonkey Radio Player Stream data from HTTP and FTP servers (inc. Shoutcast, Icecast & Icecast2), with IDN and proxy server support and adjustable buffering (Bass Audio Library)

Components

  • tiOPF is an Open Source framework for Delphi & Free Pascal that simplifies the mapping of an object oriented business model into a relational database. The framework is mature and robust having been in use on production sites since 1999. It is free, open source, and available for immediate download with full source code.
  • InstantObjects™ is an integrated framework for developing object-oriented business solutions in Borland Delphi™. The framework provides the foundation for the development process as well as the engine that powers the final application.
  • THDDInfo – невизуальная компонента Delphi, позволяющая получить системную информацию об IDE, SCSI и ATAPI устройствах.
  • Graphics32 is a library designed for fast 32-bit graphics handling on Delphi and Kylix. Optimized for 32-bit pixel formats, it provides fast operations with pixels and graphic primitives, and in most cases Graphics32 outperforms the standard TCanvas classes. It is almost a hundred times faster in per-pixel access and about 2–5 times faster in drawing lines.
  • Magenta components – File Transfer Components, Delphi TMagRas Component, Components for Internet Component Suite (ICS), Check Disk and Format Disk Component, WMI and SMART Component, Windows XPE Enhanced Write Filter header conversion, Internet Protocol Helper Component, Internet Packet Monitoring Components, Delphi Registry and Initialisation Variables Code Generator, TDESCrypt component.

Components – VCL

  • Virtual Treeview component – is a treeview control built from ground up. More than 13 years of development made it one of the most flexible and advanced Delphi tree controls available today. Virtual Treeview starts off with the claim to improve many aspects of existing solutions and introduces some new technologies and principles which were not available before.
  • PlusMemo – the coolest enhanced memo editor control with syntax highlighting functionality. Native VCL component, in standard and data aware versions, Ansi and Unicode versions.
  • TRichView is a suite of native Delphi/C++Builder components for displaying, editing and printing hypertext documents. ScaleRichView is a TRichView addon providing WYSIWYG editing. Components support various character attributes (fonts, subscripts/superscripts, colored text background, custom drawn). Documents can contain tables, pictures, images from imagelists, arbitrary Delphi controls. Left, right, center or justify alignments of paragraphs, multilevel bullets and numbering, custom margins and indents, Unicode, background images, print preview, RTF import and export, HTML export, data-aware versions.
  • Components for automating Microsoft Office. Supports Microsoft Office 97 – 2010. Contains Excel and Word components.
  • SynEdit is an advanced multi-line edit control, for Borland Delphi and Kylix (C++Builder mostly works, but is unsupported). It supports syntax highlighting, word-wrapping, code completion, template components, and exporters for HTML, TeX and RTF. It is a pure-VCL/CLX control, meaning it is not a wrapper for Microsoft Windows controls and so no run-time library is required.
  • The JSDialog Pack consists of a number of components that not only emulate the Windows Vista TaskDialog and TaskDialogIndirect API functions on other operating systems but also provices enhancements over those APIs. There are components for enhancing the dialogs with edit controls and also replacing the Radio Button functionality with Check Boxes. Also included are three Password specific dialogs, that allow you to capture password information by dropping a component on your form and writing a line or two of validation code.
  • DecoCharts – a set of interactive charting components for specialized purposes. By using these components, your application can be extended with decomposition bar charts, budget status indicators, KPI status tables, and similar presentations. Components are designed as a lightweight alternative to the universal grids and charting components. Every component from the DecoCharts package can be used separately for its concrete purposes, without some resource-heavy universal component class in the background.
  • TagCloud – this package brings you the visual components, that are based on idea of a well known “tag cloud” navigation element. Namely, you can use TTagCloud and TTagIndex components coupled with a predefined styling components for managing the look and feel of your tag clouds and indexes. Complementary TNavPathLabel component implements a simple path info label (ie. the path to the selected item of content, file path, etc.).
  • TBCEditor – A syntax highlighting edit control with code folding, minimap, external JSON highlighter and color scheme files, etc.

Components – FireMonkey

  • TFireMonkeyContainer – is a small VCL component you can put on a VCL form, which hosts or embeds a FireMonkey form.
  • MonkeyMixer – plugin to mix VCL and FireMonkey forms in the same Delphi project.

Components – Settings

  • Storage Library – new way for application settings management. Storage library is a collection of components allowing to work with application settings. Using this library you can gradually add functionality of application settings management in you application. Shareware ($59)

Components – UI

  • Windows Ribbon Framework for Delphi (GitHub). Wiki
  • AlmediaDev – DynamicSkinForm, BusinessSkinForm, SkinAdapter, SmartFlash, SmartEffects.
  • Next Suite – Components: NextGrid, NextDBGrid, NextInspector, NextSheet, Next Collection (NxAlertWindow, NxButton, NxFlipPanel, NxPageControl…), Next Editors.
  • KSDev has been creating high-quality, innovative tools – VGScene, DXScene, FlashEngine, SkinEngine, BlockEngine, FXLib and ThemeEngine.
  • vcl-styles-utils – extend the Delphi VCL Styles, Adding new features and new classes. (web-blog: “The Road to Delphi – a Blog about programming“)
  • Asphyre Sphinx is the latest framework for developing 2D/3D video games and interactive business applications. It aids the developer with resource management, displaying 2D and 3D graphics in real-time, receive keyboard, mouse and joystick input, and multiplayer capabilities.
  • TMSsoftware.com –  (TMS Component Pack) –  Create modern-looking & feature-rich Windows applications faster with well over 300 components in one money and time saving bundle for Delphi 5,6,7,2005,2006,2007,2009,2010 & C++Builder 5,6,2006,2007,2009,2010.
  • AlphaControls is a collection of standard and original skinned controls with new properties added in order to enhanced program interface and add behaviors to common controls and with some new technologies using.
  • ImageEn is a component suite for image processing, viewing and analysis. It can load and save from several image file formats, acquire from TWain/WIA scanners (single and multi pages), capture video, apply filters and enhance images quality, merge images, select image regions (Magic Wand supported) and other. It supports also multiple layers and transparency. ImageEn allow you to include professional graphics software features in your applications.
  • The Drag and Drop Component Suite is a freeware VCL component library that enables your Delphi and C++Builder applications to support COM based drag and drop and integrate with the Windows clipboard.
  • The Apprehend screen capture component for Embarcadero ™ Delphi captures images of the desktop or full screen, a selected area of the screen, the active window, a selected object or window, a freehand (polygon) area of the screen, pre-selected icon sized (16×16, 32×32 or 48×48) area, and user specified area of the screen. Apprehend demos for TImage or ImageEN are provided.
  • TChromeTabs –  the modern look and feel of Chrome’s tabs.
  • TeeGrid – Lightweight full-featured Grid / Tabular control (GitHub)

Components – Multimedia

  • FFMPEG – FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video. It includes libavcodec – the leading audio/video codec library. FFMPEG For Firemonkey is a wrapper of cross platform FFMPEG APIs for Delphi and C++Builder Firemonkey on both Windows and Mac OSX.
  • FFmpeg Delphi/Pascal Headers and Examples
  • FFVCL is a native VCL components suit including Video Encoder and Video Player VCL components which wrap FFmpeg libraries perfectly. FFVCL is more easy, more flexible and more powerful than the official FFmpeg command line interface for converting and playing audio and video files.

Components – Network

  • TSipClient component with the full source code allows you to create your own SIP softphone, call center application or IVR system (300$).

Components – Mobile

  • Smart Mobile Studio, a very exciting project that allows you to write ordinary pascal in the flavour made famous by Delphi and Free pascal, but generate feature rich, cutting edge HTML5 web applications ready for the mobile market.
  • Oxygene for Java is a new edition of our Oxygene product that brings the next generation Object Pascal language to the Java and Android platforms. Just like the original Oxygene for .NET set out to bring modern Pascal development to the .NET world, Oxygene for Java is taking this same design philosophy to next level by expanding the reach of Oxygene to the second big managed platform of today.
  • JQueryMobile – JQuery Mobile is an easy way to build sites and apps that are accessible on all popular smartphone, tablet and desktop devices. The framework includes an Ajax navigation system that brings animated page transitions and a core set of UI widgets: pages, dialogs, toolbars, listviews, buttons with icons, form elements, accordions, collapsibles, and more. jQuery Mobile has broad support for the vast majority of all modern desktop, smartphone, tablet, and e-reader platforms.

Components – Web

  • THTMLWriter is a class for creating HTML and HTML Documents. THTMLWriter uses the fluent interface. It can be used to create either complete HTML documents or chunks of HTML. By using the fluent interface, you can link together number of methods to create a complete document.
  • delphi chromium embedded (developer blog)
  • Raudus – is a Web-based, Ajax-driven framework and component set for Delphi, that allow create Rich Internet Applications (RIA). Raudus uses ExtJS GUI library in web-applications for PC browsers and SencaTouch library in web-applications for mobile devices. The development process is very similar to desktop applications development.
  • Morfik provides a complete and integrated visual design environment for building and deploying Ajax-based Rich Internet Applications.
  • ExtPascal is an Object Pascal (Delphi, FreePascal/Lazarus) wrapper/binding for Ext JS, a complete GUI Ajax framework, made in JavaScript, for Rich Internet Application (RIA) development. ExtPascal lets you use Ext JS from Object Pascal commands issued by the server. It brings the structure and strict syntax of the Object Pascal for programming the web browser.
  • ICS – The Internet Component Suite is composed of various Internet components and applications. It is distributed as freeware with full source code for all Delphi and C++Builder versions. The sample applications exists in two forms: Object Pascal for Delphi and C++ for C++Builder. The components are written in Object Pascal native VCL which can be compiled by Delphi as well as C++Builder.
  • uniGUI framework extends Web application development experience to a new dimension. Each uniGUI application can be considered both as a desktop and a Web application at the same time. This unique feature enables  developers to create, design and debug their Delphi projects as a regular desktop application and then choose one of the available options for Web deployment. Of course, with uniGUI it is possible to create, design and debug applications which target only the Web.
  • The Habari Web Components web application framework allows to build web applications from simple building blocks. It is designed for small and medium sized web applications, and supports multiple application contexts with separated resource folders, dynamic and static web resources, configurable logging, IPv4 and IPv6 connectors, resource path mapping, static resource caching and MIME type detection and on-demand HTTP session creation. Its core HTTP server infrastructure leverages the Internet Direct (Indy) library.
  • The TMS Cloud Pack contains components that offer integration with several cloud services. Set of VCL components to offer easy access from Windows applications to cloud services (DropBox, Google Drive and SkyDrive storages). Built-in support for OAuth 1.0 & 2.0 handling. Built-in support for use of refresh tokens for use with one time authentication. Shareware (50€).

Components – DB

  • EhLib contains components and classes for Embarcadero RAD Studio XE, intended to increase capacity of the client part of database application in part of interaction with applications user. (rus)

Components – SQL

  • SQLite3 database DELPHI components (freeware)
  • SQLite3 Framework
  • kbmSQLiteMan – New free and simple to use SQLite manager product: SQLite v.3.7+ support, Syntax highlighting, Improved blob interpretation/preview, Structure view with SQL generation, Save and load query statements from external files, Save dataset results to CSV, XML and JSON file, In line editing and resolving for non complex SELECTs, Complete pragma view with help reference, Automatic SQL creation.

Debug

  • Spider – Delphi profiler – real time profiler for Delphi applications: Detailed debug information (internal, TDS, MAP); Display information for multi-threaded applications; Timeline diagram for process execute; Analysis of exceptions; Analysis of the realtime use of memory; Analysis of memory leaks; Analysis of the call stack; Analysis of run-time functions (code tracking); Analysis of the “deadlocks” (Sleep, CriticalSection, SendMessage, etc.); The ability to view the source code in the analysis of events
  • Sampling Profiler – is a performance profiling tool for Delphi 5 to 32bits Delphi XE4. Its purpose is to help locate bottlenecks, even in final, optimized code running at full-speed.
  • DDDebug is a collection of debugging tools which contains several modules: a memory profiler, a thread viewer, a module viewer and an enhanced exception handler. DDDebug can be integrated easily into your Delphi projects, either using its integrated graphical user interface or its API.

Debug Memory Manager

  • EurekaLog – is a complete bug resolution tool for Delphi and C++Builder developers that gives your application the power to catch every exception and memory leak, directly on the end user PC, generating a detailed log of the call stack (with file, class, method and line number), optionally sending you a copy of each log entry via email or to a web bug-tracker.
  • madExcept was built to help you locating crashes in your software. Whenever there’s a crash/exception in your program, madExcept will automatically catch it, analyze it, collect lots of useful information, and give the end user the possibility to send you a full bug report.
  • LeakCheck – is a memory manager extension that adds leak checking functionality. Main difference from the default memory manager is multi-platform implementation of leak checking with DUnit and DUnitX integration.

Code Analysis

  • Analyzer for Delphi – uses Analyzer scans for *.pas and *.dfm files and shows there dependencies in a chart.
  • FixInsight – the static code analysis performed by FixInsight can help you find bugs early in the development process. You will be able to identify potential errors and oddities. Think of FixInsight as a compiler extension that lets you instantly find issues in your code which you would spend hours debugging otherwise. Find bugs in your code before your customers do. (review)
  • Pascal Analyzer parses Delphi source code (Object Pascal) and produces reports that help you understand your source code better. You will also be able to identify potential errors and anomalies. Read more!
  • FixInsight – code analysis tool for Embarcadero Delphi. The tool for Delphi developers that detects issues in Delphi source code.
  • CodeHealer is an efficient and powerful source code analysis and verification tool that will help find and fix a significant number of programming bugs, mistakes and inconsistencies in Delphi programs before they are released. The information provided by CodeHealer will also help developers understand and improve existing code that they have not written. This is especially helpful for corporate developers who take over management of legacy applications.

Memory Manager

  • SafeMM Debug Memory Manager for Delphi/C++. This memory manager will raise an AV when an improper attempt is made to read or write memory.
  • FastMM is a lightning fast replacement memory manager for Embarcadero Delphi Win32 applications that scales well in multi-threaded applications, is not prone to memory fragmentation, and supports shared memory without the use of external .DLL files.
  • SapMM is Simple As Possible memory manager for Delphi XE-XE3, designed especially for memory-intensive multithreaded applications. Should also work with other versions of Delphi (may require tiny code modifications). SapMM scales very (I mean VERY) well under multithreaded use. If you use OmniThreadLibrary, you definetely should take a look at SapMM.

Test automation

  • OpenCTF is a test framework add-on for Embarcadero Delphi which performs automatic checks of all components in Forms (or DataModules). It provides an easy way to build automatic quality checks for large projects where many components have to pass repeated tests. Adding OpenCTF tests to a DUnit test suite requires only a few lines of code. Writing your own custom component tests needs only a few seconds. OpenCTF is based on the DUnit open source test framework and extends it by specialized test classes and helper functions. (download)
  • DUnit – an Xtreme testing framework for Borland Delphi programs
  • CruiseControl is both a continuous integration tool and an extensible framework for creating a custom continuous build process
  • Delphi Mocks – a Open Source Mocking framework for Delphi XE2 or later.

Code Profilers

  • SamplingProfiler is a sampling profiler for Delphi 5 to Delphi XE. Its purpose is to help locate bottlenecks, even in final, optimized code running at full-speed.
  • GpProfile allows easily find bottlenecks and significantly improve perfomance of your Delphi applications. It is a must-have tool for any Delphi developer.
  • AsmProfiler can profile your application to find bottlenecks in your code (for optimizations). It is a Windows profiler (Windows NT, 2000, XP and x86) and can profile any function (dll, c++, delphi, ?) without changing the original code or even the need of the original code.
  • ProDelphi is a tool to measure the runtime of programs written in Delphi Object Pascal.
  • QRQ Profiler – is a sampling profiler for Windows 2000/XP. This tool is designed for Delphi programmers but can be used with other programming languages as well.
  • AQtime is a performance profiler and memory allocation debugger for 32-bit and 64-bit Windows and .NET-connected applications. AQtime can be integrated into Microsoft Visual Studio, Borland Developer Studio or CodeGear RAD Studio or it can run as a stand-alone application. With AQtime, you can not only find a bottleneck, but also determine what caused that bottleneck.

Tools

  • C to Pascal Converter
  • WMI Delphi Code Creator – the WMI Delphi Code Creator tool, allows you to generate Object Pascal and C++ code to access the WMI (Windows Management Instrumentation) classes, events and methods. this freeware tool is inspired by the  WMI Code Creator. (google code project: wmi-delphi-code-creator)
  • maXbox – is a scripter tool and inbuilt delphi engine in one exe! It is designed for teaching and developing, runs under Windows and Linux (CLX) to set Delphi in a box without installation. maXbox is built on RemObjects Pascal Script, the smart evolution of programming. With include, eventsprinting, drag n’drop, syntax check, code templates, VM-, and DLL support. Plus Indy, Jedi, Sysutils, Graphics & Unit. In 3.8 with CryptoBox and GRID!, OS Lib – Current Version mX3.8.2 with mX4 compiler.
  • Good Tools for Delphi Developers

Tools – Build

  • Lazy Delphi Builder– the best build tool for Codegear Delphi. Automates following tasks:
    • Recompile projects/packages from sources with all dependencies, without need to mess around with configs.
    • Quickly (re-)install components from sources into IDE, with no need to change your Library Path.
  • WAnt is a Pascal-friendly build automation tool. It automates the process of building, testing, and packaging applications and libraries much like Apache (ex Jakarta) Ant does. WAnt is kind of like Ant, without being Java-dependent, whereas Ant was “kind of like Make, but without Make’s wrinkles.”
  • Thundax Delphi Builder – a custom application to provide automated Builds for Delphi using MSBuild. This little tool generates a batch file to call the list of projects and it displays the information using a TMemo getting the info from the console window using a pipe with the capture.
  • SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages.

Tools – Crypt

  • Citadel compresses and encrypts the DFMs in your executables. This reduces the size of the application and protects your forms from hackers. You can apply Citadel to your applications in just 1 minute.

Tools – UML

  • ESS-MODEL – The fastest and easiest to use UML reversing tool on the market! With ESS-MODEL you can view class diagrams from your code in the time that other tools are still busy loading. No delays, just drag-and-drop your sourcefiles onto ESS-MODEL and get instant class diagrams. ESS-MODEL handles Delphi/Kylix and Java source files, and can produce html documentation complete with class diagrams.

Tools – Install

Utilities – Web

Samples

  • FMXPong – Pong 3D with Delphi and Firemonkey (Windows, Mac OS, Android, IOS) This is an example of using Firemonkey in 3D with Delphi. This project is a clone of the video game Pong. (GitHub)

Tips

Delphi Labs

Code Snippets

Comments are closed.