An overview of the Packages and Assemblies in the Internet Direct (Indy) source code.
The source code in the Indy 10 library has been reorganized into the following packages:
Each package (and the source files used in the package) are stored in separate directories. For example, Delphi 2005 could have Indy package files and source code in the following directories:
C:\Program Files\Borland\BDS\3.0\Source\Indy10\System |
C:\Program Files\Borland\BDS\3.0\Source\Indy10\Core |
C:\Program Files\Borland\BDS\3.0\Source\Indy10\Protocols |
Each package includes a run-time .DPK file for Delphi compiler versions 4, 5, 6, 7, 2005 (and beyond). For packages that also include installable IDE components, there is also a design-time .DPK file for Delphi compiler versions 4, 5, 6, 7, 2005 (and beyond).
The compiler version is used as a suffix in the package file name. For example, Delphi 2005 (compiler version 9.0) uses the suffix '90' in all package file names.
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem50.dpk |
n/a |
.\Core |
IndyCore50.dpk |
dclIndyCore50.dpk |
.\Protocols |
IndyProtocols50.dpk |
dclIndyProtocols50.dpk |
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem60.dpk |
n/a |
.\Core |
IndyCore60.dpk |
dclIndyCore60.dpk |
.\Protocols |
IndyProtocols60.dpk |
dclIndyProtocols60.dpk |
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem70.dpk |
n/a |
.\Core |
IndyCore70.dpk |
dclIndyCore70.dpk |
.\Protocols |
IndyProtocols70.dpk |
dclIndyProtocols70.dpk |
.\SuperCore |
IndySuperCore70.dpk |
dclIndySuperCore70.dpk |
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem90.dpk |
n/a |
.\Core |
IndyCore90.dpk |
dclIndyCore90.dpk |
.\Protocols |
IndyProtocols90.dpk |
dclIndyProtocols90.dpk |
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem90Net.dpk |
n/a |
.\Core |
IndyCore90Net.dpk |
dclIndyCore90Net.dpk |
.\Protocols |
IndyProtocols90Net.dpk |
dclIndyProtocols90Net.dpk |
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem100.dpk |
n/a |
.\Core |
IndyCore100.dpk |
dclIndyCore100.dpk |
.\Protocols |
IndyProtocols100.dpk |
dclIndyProtocols100.dpk |
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem100Net.dpk |
n/a |
.\Core |
IndyCore100Net.dpk |
dclIndyCore100Net.dpk |
.\Protocols |
IndyProtocols100Net.dpk |
dclIndyProtocols100Net.dpk |
If you are using a version of Indy.Sockets that is installed along with the Borland Developer Studio 2006 IDE and compilers, the compiler verison suffix is omitted from the package names. For Instance:
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem.dpk |
n/a |
.\Core |
IndyCore.dpk |
dclIndyCore.dpk |
.\Protocols |
IndyProtocols.dpk |
dclIndyProtocols.dpk |
Path |
Run-time Package |
Design-time Package |
.\System |
IndySystem.dpkw |
n/a |
.\Core |
IndyCore.dpkw |
dclIndyCore.dpkw |
.\Protocols |
IndyProtocols.dpkw |
dclIndyProtocols.dpkw |
The IndySystem package (IndySystemXX.dpk) provides system-level support for constructs used in the Indy library. For instance:
The IndyCore package includes the essential base classes and components needed to implement ICMP, TCP, and UDP clients or servers, including:
The IndyCore package does not include support for any of the higher-level protocols.
The IndyProtocols package implements classes need to create and support clients and servers for Internet Standard protocols, like:
HTTP |
QOTD |
FTP |
RSH |
SMTP |
SASL |
NNTP |
SNMP |
POP3 |
Socks |
IMAP4 |
SysStat |
DNS |
TFTP |
Finger |
WebDAV |
Gopher |
Hashing algorithms |
HL7 |
MIME, UUE, and XXE message handling |
Ident |
Encryption and Decryption |
WhoIs |
Compression using ZLib |
SNTP |
Cookies |
Time |
URI |
Echo |
VCard |
The IndySuperCore package provides support for advance functionality available on Windows server platforms for the Fibers API, I/O Completion Ports, and chained IOHandlers.
The IndySuperCore package is designed to aid in creating more scalable servers where thousands of simultaneous client connections are required.
Fiber and IOCP APIs are supported only for the Windows 2000, 2003, and XP operating systems using Delphi version 7. Windows 95, 98, and ME are not supported. Delphi compilers prior to version 7 are also unsupported due to critical changes in the VCL since those releases.
For more detailed information about differences in the implementations for the Indy 9 and Indy 10 libraries, please refer to the "Migrating to Indy 10" section in the documentation.
Indy.Sockets is developed using the Delphi programming language (formerly know as Object Pascal). Borland IDE users can compile packages and assemblies using the package files included in the source code for the library. For users on .NET platform that do not include support for the Delphi language (including VS.NET and Mono), the Indy.Sockets.DLL pre-compiled assembly is available from the Indy website.
Copyright © 1993-2006, Chad Z. Hower (aka Kudzu) and the Indy Pit Crew. All rights reserved.
|
Post feedback to the Indy Docs Newsgroup.
|