Home SpTBXLib VELVEx MultiInstaller Skin Editor

Silverpoint MultiInstaller

Silverpoint MultiInstaller is a multi component package installer for Embarcadero Delphi and C++Builder, it was created to ease the components installation on the IDE.

Silverpoint MultiInstaller can help you install multiple component packs in a few clicks.
Just download the zips or get the .git file (to GIT clone from a local or remote repository like GitHub, Bitbucket, etc) and select the destination folder, all the components will be uninstalled from the IDE if they were previously installed, unziped, patched, compiled and installed on the RAD Studio IDE.

Getting Started

To install a component pack with MultiInstaller you have to follow these steps:
1) Read the licenses of the component packs you want to install.
2) Get the zip files of component packs.
3) Get the Silverpoint MultiInstaller.
4) Get the Setup.ini file for that component pack installation or create one.

For example, if you want to install TB2K + SpTBXLib:
1) Create a new folder for the installation.
2) Download all the component zips to the created folder: SpTBXLib + TB2K
3) Download Silverpoint MultiInstaller
4) Download the Setup.Ini file.

The installation folder will end up with this files:

C:\MyInstall
       |-  SpTBXLib.zip
       |-  tb2k-2.2.2.zip
       |-  MultiInstaller.exe
       |-  Setup.ini

You are ready to install the component packages, just run the MultiInstaller, select the destination folder, and all the components will be unziped, patched, compiled and installed on the Delphi IDE.

Creating a customized Setup.Ini

The Setup.Ini file is a text ini file that has 2 types of sections, package sections and general options section.
To create a customized Setup.Ini file modify one of the templates.

The package order in the Ini file IS relevant.
Silverpoint MultiInstaller will execute in the following order:

  1. Unzip files in order or GIT clone from a local or remote repository (like GitHub, Bitbucket, etc)
  2. Run all the execute commands in order
  3. Compile and install the packages in order
Package Section Format
Key Name Value

[Package - <name>]

 

Name

Component package description.

Zip

Zip filename.

Git

Git repository to clone.

For example:
https://github.com/SilverpointDev/sptbxlib.git

Folder

Destination folder relative to the install folder.
For example if you want to unzip and install the component in C:\Components\SpTBXLib
It should be: Folder = SpTBXLib

SearchPath

Folder in the zip folder structure to be added to the search path.
This is typically the Source folder.
If ommited the components root folder is used.
For example if the zip file has this structure::

SpTBXLib.zip
      |-  Demos
      |-  Packages
      |-  Source

It should be: SearchPath = Source
You can add multiple folders to the SearchPath, the strings must be enclosed by double quotes and separated by comma.
Examples:
SearchPath = Source
SearchPath = "Source1", "Source2"
SearchPath = "", "Source1", "Source2"
Here the empty string represents the root folder.

Includes

Includes directories.
The strings must be enclosed by double quotes and separated by comma.
Can be omitted if no include files are used by the package.
$BaseFolder environment variable can be used to represent the components destination folder.

For example:
Includes = "$BaseFolder\TNT\Source", "c:\include2"

D*

Packages in the zip folder structure, where * represents the IDE version.
Can be one of the following:

D28 Delphi 11 Alexandria
D27 Delphi 10.4 Sydney
D26 Delphi 10.3 Rio
D25 Delphi 10.2 Tokyo
D24 Delphi 10.1 Berlin
D23 Delphi 10 Seattle
D22 Delphi XE8
D21 Delphi XE7
D20 Delphi XE6
D19 Delphi XE5
D18 Delphi XE4
D17 Delphi XE3
D16 Delphi XE2
D15 Delphi XE
D14 Delphi 2010
D13 Doesn't exist!
D12 Delphi 2009
D11 Delphi 2007
D10 Delphi 2006
D9 Delphi 2005
D8 Doesn't exist! It was Delphi 8.NET
D7 Delphi 7 (minimum supported IDE version)

The string value must be enclosed by double quotes and separated by comma.
The runtime packages must be placed before the designtime packages.
For example if the component package zip file has this structure:

SpTBXLib.zip
      |- DelphiXE2  
           |- SpTBXLib.dpk
           |- SpTBXLibDsgn.dpk
      |- DelphiXE3
           |- SpTBXLib.dpk
           |- SpTBXLibDsgn.dpk

It should be:
D16 = "Packages\DelphiXE2\SpTBXLib.dpk", "Packages\DelphiXE2\SpTBXLibDsgn.dpk"
D17 = "Packages\DelphiXE3\SpTBXLib.dpk", "Packages\DelphiXE3\SpTBXLibDsgn.dpk"

Installable

0 if the package is not installable
1 if the package needs to be installed
2 if the package is not installable but needs to add the SearchPath to the registry, this is useful when installing utility libraries that doesn't have components to install, for example GraphicEx, GDI+, DirectX, etc.

If omitted the default value is 1

GroupIndex

Used to group the component packages.
Can be omitted, the default value is 0

ExecuteCount

Number of entries in the execute list.
Can be omitted, the default value is 0

Execute<index>

Execute list, use this if you need to copy or execute some files before installing the packages.
This is useful to patch source files.

Use the following format:
Execute<index> = "<Action>", "<Origin>", "<Destination>"
Commas are not optional.
Action can be "copy", "copyandrun", "delete" or "run"
Origin is the file or folder to copy or delete
Destination is the destination folder
When Action is "copyandrun" the file will be copied and run from the destination folder.
$BaseFolder environment variable can be used to represent the components destination folder.

Example:
ExecuteCount=3
Execute0="copy", "$BaseFolder\TBX\patch.exe", "$BaseFolder\TB2K\Source\"
Execute1="copy", "$BaseFolder\TBX\_tb2k_patch.diff.txt", "$BaseFolder\TB2K\Source\"
Execute2="copyandrun", "$BaseFolder\TBX\patch.bat", "$BaseFolder\TB2K\Source\"

Options Section Format
Key Name Value

[Options]

 

MinimumIDEVersion

Minimum Delphi IDE version that is supported by the packages.
For example: MinimumIDEVersion = D7

DefaultInstallFolder

Default install folder that should be selected to install.
For example: DefaultInstallFolder = C:\Components

DefaultInstallIDE

Default Delphi IDE version that should be selected to install.
For example: DefaultInstallIDE = D7

Support

Direct e-mail contact:

License

The contents of this package are licensed under a disjunctive tri-license giving you the choice of one of the three following sets of free software/open source licensing terms:

Software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.

The initial developer of this package is Robert Lee.

Donations

Silverpoint MultiInstaller is free, however, if you wish to express your appreciation for the time and resources the authors have expended developing and supporting it over the years, we do accept and appreciate donations.

Donations are accepted via PayPal:

Thank you for your support.

Downloads

Downloads
Filename Date Size Description

MultiInstaller

28 November 2023

2951KB

Silverpoint MultiInstaller

MultiInstallerSource.3.5.10.zip

28 November 2023

71KB

Silverpoint MultiInstaller source code

Setup.Ini template files
Filename Date Size Description

Setup.ini

28 November 2023

2KB

Installation Setup:
SpTBXLib + TB2K 2.2.2 + Patch
Including GIT source

Release History
28 November 2023 - version 3.5.10
  - Added RAD Studio 12 Athens support.
  - Improved IDE macros parsing speed.
  - Added {$LIBSUFFIX AUTO} parsing (introduced on Delphi 10.4 Sydney).
    
18 September 2023 - version 3.5.9
  - Added GIT installation checking
  
18 January 2022 - version 3.5.8
  - Added RAD Studio Alexandria support.
  - New checkbox added to prioritize GIT over ZIP, simplifying setup files, 
    the setup files should include ZIP and GIT info.
  
24 December 2020 - version 3.5.7
  - Added RAD Studio 10.4 Sydney support.
  
22 January 2020 - version 3.5.6
  - Code cleanup
  
26 November 2018 - version 3.5.5
  - Added RAD Studio 10.3 Rio support
  - Added GIT support, thanks to PyScripter.
  
21 September 2018 - version 3.5.4
  - Added RAD Studio 10.2 Tokyo support.
  
21 May 2016 - version 2.5.3
  - Added support for RAD Studio XE8, RAD Studio 10 Seattle and
    RAD Studio 10.1 Berlin
  
28 October 2014 - version 3.5.2
  - Added RAD Studio XE7 support.
    
28 May 2014 - version 3.5.1
  - Added RAD Studio XE6 support.
    
18 March 2014 - version 3.5
  - Added RAD Studio XE4 and XE5 support.
  
20 April 2013 - version 3.4.8
  - Added Delphi XE3 and C++ Builder XE3 support.
    
7 February 2012 - version 3.4.7
  - Added Delphi XE2 and C++ Builder XE2 support.
  				  
25 June 2011 - version 3.4.6
  - Added Delphi XE and C++ Builder XE support.
  
13 September 2009 - version 3.4.5
  - Added Delphi 2010 and C++ Builder 2010 support.
  
15 March 2009 - version 3.4.4
  - MultiInstaller is now tri-licensed, you can choose between
    MPL, GPL and LGPL.
  
1 March 2009 - version 3.4.3
  - Stéphane Wierzbicki improved the SpExecuteDosCommand utility
    function and added multiple SearchPaths handling, like
    the Includes parameter, the SearchPath parameter should either
    contain one source directory or multiple ones. For the later,
    strings must be enclosed by double quotes and separated by comma.
  
17 January 2009 - version 3.4.2
  - Fixed incorrect French translation of the RAD Studio Project
    directory, thanks to Stéphane Wierzbicki for reporting it.
   
26 September 2008 - version 3.4.1
  - Added Delphi 2009 and C++ Builder 2009 support.
   
4 September 2007 - version 3.4
  - Added Delphi 2007 and C++ Builder 2007 support.
    
24 November 2006 - version 3.3.1
  - Added extra check to use -JL compiler switch, it will be used
    only if the C++Builder personality is installed.
	  
27 August 2006 - version 3.3
  - New Logo.
  - Exe compressed with UPX.
  - Minor fixes.  
   	  
27 June 2006 - version 3.2
  - Added multilanguage support for Delphi and C++Builder, it
    now supports English, French, German and Japanese IDEs.
	   
15 June 2006 - version 3.1
  - Added Environment Variables Overrides support, thanks to
    Wyk for implementing this.
  - Added -R dcc32.exe compiler switch support to make the
    components source directory the default *.dcr search
    folder, thanks to Wyk for reporting this.
  - Improved the "Intallable" directive, it is now possible to install a
    package that doesn't have components, this is useful when installing
    utility libraries, for example GraphicEx, GDI+, DirectX, etc.
	  
27 February 2006 - version 3.0
  - Added support for C++Builder 2006.
     
10 February 2006 - version 2.0
  - Added support for BDS 2006.
  - Added support for $LIBSUFFIX package compiler directive.
  - Added DefaultInstallFolder and DefaultInstallIDE Ini key options.  
  - Replaced the zip library for Abbrevia.
    
18 August 2005 - version 1.0
  - Initial release.