ICS Download

From Overbyte
Jump to navigation Jump to search

ICS is available as source code only. You need Delphi to build the sample programs and create your own application. You will also need OpenSSL libraries if using SSL-enabled components.

ICS versions available:

  • ICS-V8 for Delphi 7 / C++ Builder 2006 to Delphi XE8, 10 Seattle, 10.1 Berlin and 10.2 Tokyo / C++ Builder XE3 with FireMonkey cross platform support for POSIX/MacOS, also IPv6 support (main development tree, 32 and 64-bit). Note that latest C++ Builder version supported is XE3 (lack of spare time, sorry).
  • ICS-V7 for Delphi 7 / C++ Builder 2006 to Delphi / C++ Builder XE3 (stable release, no new development, please upgrade to V8).
  • ICS-V6 for Delphi 7 / C++ Builder 2006 to Delphi / C++ Builder 2007 (discontinued and obsolete, please upgrade to V7 if you do not have to support Windows versions < W2K).
  • ICS-V5 for Delphi / BCB 1 to Delphi / C++ Builder 2007 and Delphi .NET (discontinued, important bug fixes may still be backported from ICS-V7). SSL option requires at least Delphi 7 or C++ Builder 2006.

There are four options to obtain the source code.

Overbyte Website

Download from Overbyte web site

Provides download links to latest stable releases. This is a safe choice if you use ICS-V5, ICS-V6 or ICS-V7. ICS-V8 however is still work in progress and only available here. Note that ICS-V7 and ICS-V8 are the only ICS versions supporting Delphi and C++ Builder 2009 and later, 32 and 64-bit.

Latest Stable Version ICS V8.49 - recommended

This is the latest recommended version, which has been tested and used for various published ICS application. It is updated for new releases of RAD Studio and major changes. V8.49 is the version displayed by the main unit OverbyteIcsWSocket.

Download Platforms
ICS-V8.49 Delphi 7 to XE8, 10 Seattle, 10.1 Berlin and 10.2 Tokyo, C++ Builder 2006 to XE3. Includes OpenSSL 1.1.0f.
ICS-V8.49 Delphi 10.2 Tokyo only. Includes OpenSSL 1.1.0f.
ICS-V8.49 Delphi 10.1 Berlin only. Includes OpenSSL 1.1.0f.
ICS-V8.44 Delphi 7 to XE8, 10 Seattle, 10.1 Berlin and 10.2 Tokyo, C++ Builder 2006 to XE3. Includes OpenSSL 1.1.0e.
ICS-V8.44 Delphi 10.2 Tokyo only. Includes OpenSSL 1.1.0e.
ICS-V8.44 Delphi 10.1 Berlin only. Includes OpenSSL 1.1.0e.
ICS-V8.44 Delphi 10 Seattle only. Includes OpenSSL 1.1.0e.
ICS-V8.34 Delphi 7 to XE8, 10 Seattle and 10.1 berlin, C++ Builder 2006 to XE3. Includes OpenSSL 1.1.0b.
ICS-V8.34 Delphi 10.1 Berlin only. Includes OpenSSL 1.1.0b.
ICS-V8.34 Delphi 10 Seattle only. Includes OpenSSL 1.1.0b.
ICS-V8.26 Delphi 7 to XE8, 10 Seattle and 10.1 berlin, C++ Builder 2006 to XE3. Earliest version to support OpenSSL 1.0.2g and later.
ICS-V8.23 Delphi 7 to XE8 and 10 Seattle, C++ Builder 2006 to XE3

From XE8 onwards, Delphi includes a new GetIt tool that offers a catalog of third party components, and allows them to be automatically downloaded and installed. The same stable ICS versions listed above should be available from GetIt. Beware GetIt install each new version in a new directory.

Zipped Daily Snapshots

This is the easiest way to get the latest version. These packages are built from the version control repositories automatically when they change and are refreshed once a day. To use the latest OpenSSL version, download this snapshot.

Download Changes log
ICS-V8 Snapshot View

Archives

Download Changes log
ICS-V7 Archive View
ICS-V6 Archive View
ICS-V5 Archive View

Version Control System

Using the version control repository is the best choice if you want to get live access to current development files. Overbyte uses a Subversion server and you need to use a Subversion client such as TortoiseSVN or your favorite browser. The URLs are as follows:

ICS Version SVN URL HTTP URL
ICS-V8 svn://svn.overbyte.be/ics/trunk http://svn.overbyte.be:8443/svn/ics/trunk
ICS-V7 svn://svn.overbyte.be/ics/tags/icsv7 http://svn.overbyte.be:8443/svn/ics/tags/icsv7
ICS-V6 svn://svn.overbyte.be/ics/tags/v6_obsolete http://svn.overbyte.be:8443/svn/ics/tags/v6_obsolete
ICS-V5 svn://svn.overbyte.be/icsv5 http://svn.overbyte.be:8443/svn/icsv5

Use username = ics and password = ics for read access. Write access is only available to TeamICS.

Download OpenSSL Binaries (required for SSL-enabled components)

Please note older versions of the ICS source code had an internal check to only allow loading of the latest OpenSSL it was tested with, so you could not use new DLLs with an old application without recompiling with the latest version of ICS first. But ICS V8.16 on 25th March 2015 relaxed this check so that minor versions with a letter suffix that don't add new features or break anything (in theory) are now supported. This worked for about a year, but OpenSSL 1.0.2g and 1.0.1s, and later, no longer support SSLv2 which means old versions of ICS can no longer load them, so V8.24 dated 3rd March 2016 or later is now needed for these current and newer OpenSSL releases. ICS V8.24 and later will currently support up to 1.0.2z, and V8.33 and later up to 1.1.0z. Also note ICS V8 no longer supports 1.0.0 and earlier.

OpenSSL removed support for the obsolete SSLv2 protocol in 2016 from 1.0.1s and 1.0.2g and ICS V8.35 finally removed SSLv2 support even with older OpenSSL releases.

OpenSSL 1.0.1 and later are only supported by ICS v8, v7 is no longer updated for new OpenSSL versions. The 64-bit DLLs are only for use with Delphi applications compiled for the 64-bit platform, the 32-bit DLLs work on both 32-bit and 64-bit Windows with 32-bit applications.

OpenSSL 1.1.0 is a major new version with new DLL file names and many different exports, and requires ICS V8.33 or later. Generally, applications need not be changed, but there are several new SSL features in V8.33 that should be studied.

OpenSSL 1.1.1 will add support for TLS/1.3 and will be released once the protocol is finalised, it's currently at draft 20. It will need a new version of ICS for support, but this is anticipated to be only minor changes.

The OpenSSL DLLs and EXE files included in the latest zips below are digitally code signed 'Open Source Developer, François PIETTE', the lead developer for ICS. ICS V8.38 and later check the DLLs are correctly signed when opening them.

Date Download Description Comments
2017-05-26 OpenSSL Binaries Win-64 v1.1.0f requires ICS V8.32 or later Built with Visual Studio Community 2013 For 64-bit applications only (XE2+). Digitally code signed.
2017-05-26 OpenSSL Binaries Win-32 v1.1.0f requires ICS V8.32 or later Built with Visual Studio Community 2013 Use with 32-bit applications on Windows 64-bit. Digitally code signed.
2017-05-26 OpenSSL Binaries Win-64 v1.0.2l no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". For 64-bit applications only (XE2+). Digitally code signed.
2017-05-26 OpenSSL Binaries Win-32 v1.0.2l no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". Use with 32-bit applications on Windows 64-bit. Digitally code signed.
2017-02-17 OpenSSL Binaries Win-64 v1.1.0e requires ICS V8.32 or later Built with Visual Studio Community 2013 For 64-bit applications only (XE2+). Digitally code signed.
2017-02-17 OpenSSL Binaries Win-32 v1.1.0e requires ICS V8.32 or later Built with Visual Studio Community 2013 Use with 32-bit applications on Windows 64-bit. Digitally code signed.
2017-01-26 OpenSSL Binaries Win-64 v1.0.2k no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". For 64-bit applications only (XE2+). Digitally code signed.
2017-01-26 OpenSSL Binaries Win-32 v1.0.2k no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". Use with 32-bit applications on Windows 64-bit. Digitally code signed.
2016-11-10 OpenSSL Binaries Win-64 v1.1.0c requires ICS V8.32 or later Built with Visual Studio Community 2013 For 64-bit applications only (XE2+). Digitally code signed.
2016-11-10 OpenSSL Binaries Win-32 v1.1.0c requires ICS V8.32 or later Built with Visual Studio Community 2013 Use with 32-bit applications on Windows 64-bit. Digitally code signed.
2016-09-26 OpenSSL Binaries Win-64 v1.0.2j no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". For 64-bit applications only (XE2+). Digitally code signed.
2016-09-26 OpenSSL Binaries Win-32 v1.0.2j no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". Use with 32-bit applications on Windows 64-bit. Digitally code signed.
2016-09-23 OpenSSL Binaries Win-64 v1.0.1u no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". For 64-bit applications only (XE2+).
2016-09-23 OpenSSL Binaries Win-32 v1.0.1u no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". Use with 32-bit applications on Windows 64-bit
2016-05-04 OpenSSL Binaries Win-64 v1.0.2h no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". For 64-bit programs only (XE2+).
2016-05-04 OpenSSL Binaries Win-32 v1.0.2h no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". Use with 32-bit applications on Windows 64-bit
2016-05-04 OpenSSL Binaries Win-64 v1.0.1t no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". For 64-bit programs only (XE2+).
2016-05-04 OpenSSL Binaries Win-32 v1.0.1t no SSLv2, requires ICS V8.24 or later Built with Visual Studio Community 2013 Built with default OpenSSL options, replaced "/MD" by "/MT". Use with 32-bit applications on Windows 64-bit

Download OpenSSL Binaries (alternative)

OpenSSL website also links to Win32OpenSSL website providing another build of Win32 DLL binaries. Note note that unlike the builds above builds on that site may have dependencies on Visual C++ 2008 Redistributables (to keep dll files smaller) so make sure you include all the required (and correct) redistributable files in your software installation. You probably don't have to care about that if you use binaries above at the cost of slightly larger DLLs. Also note that site does not keep archives of older versions so you may want to watch their page if you prefer their binaries.

Browser Demo Application using HtmlViewer

This is an example internet browser using the HtmlViewer component from: Google SVN (11.2) or GitHub (11.5).

The browser demo is in the V7 nightly zip, in the folder delphi\internet\browser, the project is FrameBrowserIcs.dpr. An executable version of the new demo may also be downloaded from here, as may HtmlViewer 11.2 used to test and build the demo.

Download
Executable Browser Demo
HtmlViewer component 11.2

The HtmlViewer component must be downloaded and installed before the demo can be built. The demo is based on FrameBrowserIndy project but with various enhancements, specifically display of all HTTP and some or all HTML traffic which makes it very useful for debugging the THttpCli component. The demo needs dated 1st April 2012 or later with the new cookies unit.

The project is a good basic browser for HTML4, but does not support any scripting, so some sites without backward compatibility may appear strange.