Delphi sources

Below you will find links for downloading zip-compressed collections of source files containing several Delphi units I wrote for different purposes. They were all tested with Delphi 10 Seattle but should also work with other Delphi versions.

Units

To implement the units in their own programs, just add the unit names to the uses statements and expand the compiler search paths if required.

Description Version Language Size Download
Delphi interface to Windows Task Scheduler 2.0
2.3
February 2024
multilingual 1.2 MB wts2-s.zip
The package provides several Delphi objects encapsulating the functions of Windows Task Scheduler 2.0 in such a way that integration into their own code becomes very easy. A sample program demonstrates the use of the units.
Notes: Implementation is not complete, but all main functions for creating and editing time schedules for user applications are supported.
  • Unit TaskSchedApi.pas - Delphi interface to Windows Task Scheduler 2.0 (taskschd.dll)
  • Unit WinTask.pas - Delphi objects to use the Windows Task Scheduler 2.0 functionality in your own programs
  • Unit WinTaskConsts.pas - language-dependent resources for WinTask.pas (English and German)
  • Program TaskSchedTest.dpr - Sample program
     
 
Delphi interface to Volume Shadow Copy Services (VSS) March 2022 multilingual 120 kB vss-s.zip
The package contains all units required to create a volume shadow copy out of a Delphi program and a sample program to demonstrate the use.
  • Unit VssApi.pas - Delphi interface to Windows Volume Shadow Copy Service (vssapi.dll)
  • Unit VssUtils.pas - Delphi functions and objects to use Volume Shadow Copy Service in your own programs
  • Unit VssConsts.pas - language-dependent resources for VssUtils.pas (English and German)
  • Program VsToolkit.dpr - Sample program
     
 
Delphi interface to Windows Portable Devices
The package provides all units needed in a Delphi program to access files which are located on a portable device connected to the computer. This can be for example a smartphone, that uses the media transfer protocol.
1.1
February 2024
independent 150 kB portabledevice.zip
  • Unit PortableDeviceDefs.pas - Types and constants from PortableDevice.h
  • Unit PortableDeviceApi.pas - Delphi interface to Windows Portable Devices
  • Unit PortableDeviceUtils.pas - Objects and functions to access Windows Portable Devices
  • Program WpdSample.dpr
  • Program PortableCopy.dpr
 
WpdSample is a sample program to demonstrate the provided functions. It is based on a Microsoft sample program of the same name, provided at GitHub.
 
PortableCopy is a VCL program to demonstrate the use of the provided objects:
  • Building a list of available portable devices
  • Building a directory tree of the selected portable device
  • Selecting a directory and displaying the associated files
  • Copying the selected files to a Windows directory
The source codes of the demo programs are also provided at GitHub.
 
 
Delphi interface to AES encryption routines by Brian Gladman: 3.4
October 2021
independent 155 kB aeslib.zip
  • Encryption and decryption using AES
  • Generation of salt values
  • Password check
  • Authentication
  • Unicode support
  • Versions for 32 and 64 bit
 
This encryption method is also used by WinZip (more information).
 
 
Multilingual applications using GnuGetText
  • Utilities and units
June 2025 independent   at GitHub
 
Long-integer arithmetic
October 2022 independent 13.38 kB xmath.zip
The unit XMathUtils.pas provides routines for calculations of positive (unsigned) integer values of any length. Variables, declared as such extra-long integers, can be used with common operators (e.g. +, -, * and /) in the source code (see Embarcadero documentation).
In addition to this unit the package contains a demo program and a program for computing any number of digits of Pi using the algorithm according to P. Borwein.
 
 
Routines for file processing
May 2024 multilingual 753 kB extfiletools.zip
  • Copying files
  • Compressing files as gzip or zip
  • Creation of zip archives (supports ZIP64 extension)
  • Unpacking of gzip and zip files
  • AES encryption on all operations
  • Copy, pack and create zip archives via FTP
  • All operations are running in a separate thread
  • Unicode support
  • Support for path lengths > 260
  • AES for 32 and 64 bit included
 
For compression and decompression the ZLib libraries by Jean-Loup Gailly and Mark Adler are used.
The FTP transfer routines are based on Indy10 components.
 
 
My own contributions to the SynEdit project.
SynEdit is a powerful text editor component for Delphi. I use this component among others in my Micro-controller Tool Package and HTML Editor (German).  
  • Units to integrate spell checking based on Hunspell including a demo program for 32 and 64 bit compiling
August 2023 independent 1.12 MB syneditspell.zip
  • Syntax highlighting for micro-controller of the 51s family (Unicode version)
     
September 2019 independent 257 kB mc51highlighter.zip
Collection of several useful subroutines for May 2024 multilingual 495 kB units.zip
string processing, number conversion, mathematical calculations, computing of holidays, text filtering using regular expressions, string encryption (requires AES), serial port control and additional system and shell functions
 
 
E-mail delivery - requires Indy10
(can also be installed as component)
 
March 2022 independent 10 kB mmailer.zip

 

Components

For implementation into your own programs, the following components must be compiled (dpk file) and then installed in the Tool Palette.

Description Version   Size Download
Collection of components for the following functions:
Tool Palette: JR-Comps
May 2024   150 kB jrcomps.zip
  • Input fields for integer and float numbers (NumberEd.pas)
  • Combo boxes with integrated history lists (HListBox.pas)
  • Several progress indicators (Prgrss.pas)
  • Extended calendar functions (JRCalendar.pas)
  • Analog clock display(CClock.pas)
  • Several graphical indicators (Indicators.pas)
  • Graphical switches (Switches.pas)
  • Combo and Group Box with Check boxes (CheckBoxes.pas)

Note: The name of the palette group can be changed by editing the include file UserComps.pas.

 
SynEdit component with extensions:
Tool Palette: SynEdit and SynEdit Highlighters
 
May 2024   1.60 MB synedit-code-jr.zip

In the Delphi installation package, you will find the unit Vcl.Shell.ShellCtrls.pas which contains among others the components TShellTreeView and TShellListView. These components are very suitable in dialogs for selecting directories and files. Unfortunately it seems that this unit, except for some adaptions to Unicode, has not been enhanced since Delphi 7 (there located in the category Demos).
In the following component package, apart from than some corrections, I have added a few additional functions such as sorting by filename, file date or size.

Description Version   Size Download
Shell components: September 2021   26,4 kB vclshellctrls.zip
  • TShellTreeView with the optional exclusion of displaying zip files and inclusion of displaying hidden system files and directories (since Windows 7)
  • TShellComboBox
  • TShellListView with the optional inclusion of displaying zip files, sorting the list by clicking on the column headers and adjustable column widths
  • TShellChangeNotifier
 
 

 

Dialogs

To use the following dialogs, each must be added to the project. The uses entry will then be automatically inserted by Delphi. Some of the dialogs provide calling variants which will automatically create their own form (e.g. InputText), hence it is not necessary to include these in the project.
All dialogs are available in English (basic version for multilingual developments) and in German.
Some dialogs require units contained in the above Unit packages:
Unit collection, File operations and FTP, E-mail delivery.

Description Version Language Size Download
Collection of dialogs for different purposes: May 2024 multilingual 1.20 MB dialogs.zip
  • Selection of directories
  • Selection of files
  • Password input
  • Editing of string lists
  • Definition of label formats
  • CSV import with preview
  • Definition of export format for CSV files
  • Advanced number and text input
  • Text display with search options
  • Simple Web browser
 

 

Sample programs

This is a collection of sample programs for different problems.

Description Version Language Size Download
WinTouch
Command line tool to change timestamps of files
2.0
June 2020
english 47.4 kB wintouch-s.zip
Computation of file fingerprints
Computes MD5- and SHA1/256 checksums
3.1
January 2020
multilingual 374 kB filefp-s.zip
Project administration for Delphi (XE,..,11)
including language switching English - German - French
2.5
Apr. 2022
multilingual 499 kB delphi-tools-s.zip
Samples for mathematical techniques and problems
Cordic algorithm to compute sine and cosine, approximate solutions of Fermats's theorem, square root of integer values, long integer arithmetic, computation of Pi
1.0
July 2022
multilingual 115 kB math-samples.zip
Sudoku solver
Solving of Sudoku puzzles (incl. exe file)
3.4
August 2023
multilingual 1.25 MB sudoku.zip

More sources (German)