(También conocido como componentes de FPiette)
Revisado: 18 de mayo de 2020
Lanzamiento: V8.64
http://www.overbyte.be/
http://wiki.overbyte.be/
http://www.overbyte.eu/
http://wiki.overbyte.eu/
https://svn.overbyte.be/svn/ics/
Copyright (C) 1997-2020 by François PIETTE
Rue de Grady 24, 4053 Embourg, Belgium
<[email protected]>
SSL implementation includes code written by Arno Garrels,
Berlin, Germany
ICS is freeware.
This software is provided 'as-is', without any express or
implied warranty. In no event will the author be held liable
for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any
purpose, including commercial applications, and to alter it
and redistribute it freely, subject to the following
restrictions:
1. The origin of this software must not be misrepresented,
you must not claim that you wrote the original software.
If you use this software in a product, an acknowledgment
in the product documentation would be appreciated but is
not required.
2. Altered source versions must be plainly marked as such, and
must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
4. You must register this software by sending a picture postcard
to the author. Use a nice stamp and mention your name, street
address, EMail address and any comment you like to say.
5. As this code make use of OpenSSL, your rights are restricted
by OpenSSL license as soon as you use any SSL feature.
See http://www.openssl.org for details.
ICS es Freeware. Puede usarlo sin pagar nada excepto la postal de registro (consulte "Registrarse" a continuación). Pero, por supuesto, las donaciones son bienvenidas. Puede enviar efectivo (moneda euro o dólares estadounidenses) en un envoltorio a mi dirección de la calle o comprar un certificado de regalo en Amazon en el Reino Unido. Luego lo usaré para comprar libros. Aquí está la URL directa en Amazon UK (más cercana a mi casa, no use otra): http://www.amazon.co.uk/exec/obidos/gc-email-order1/ref=g_gc_email/202-6198323-6681414 por una cantidad más generosa, contactarme por correo electrónico.
ICS es Freeware. Si usa los componentes, debe registrarse enviando una postal de imagen que muestra el área en la que vive y algunos sellos hermosos para mis hijos que son coleccionistas de sellos. No use un envoltorio, colecciono postales usadas que me envían. Escriba en la postal que es su registro de ICS.
Dirija su tarjeta a: Francois Piette, Rue de Grady 24, 4053 Embourg, Bélgica. No olvide mencionar su nombre, dirección de la calle, correo electrónico y sitio web.
ICS ha sido diseñado por François Piette, pero muchas otras personas están trabajando en los componentes y programas de muestra. El historial de cambios en cada lista de archivos de origen todos los desarrolladores que han contribuido (cuando no se da nombre, el cambio es de F. Piette). No puedo enumerar todos los contribuyentes aquí, pero quiero agradecer especialmente a dos contribuyentes especialmente activos:
- Arno Garrels
- Angus Robertson [email protected]
Se creó un nuevo foro de soporte web para ICS en febrero de 2019:
https://en.delphipraxis.net/forum/37-ics-internet-component-suite/
Una vez registrado, es posible seguir un foro con mensajes de correo electrónico para nuevas publicaciones, o un resumen diario como la lista de correo anterior.
La antigua lista de correo de Twsocket dejó de aceptar nuevos mensajes a fines de 2018, pero 20 años de mensajes archivados todavía están disponibles en:
http://lists.elists.org/pipermail/twsocket/
Las últimas versiones de ICS se pueden descargar desde el sitio web de Wiki ICS:
http://wiki.overbyte.eu/wiki/index.php/ics_download
ICS V5 y V6 son lanzamientos de archivo ya no se actualizan, el último lanzamiento compatible fue 2007.
ICS V7 es un lanzamiento estable que aún puede actualizarse para los principales errores, pero no para nuevos lanzamientos de Delphi, lo último que admitió fue XE3.
ICS V8 es el lanzamiento de desarrollo actual que se lleva a cabo en un repositorio de control de versiones públicas que se adhiere cada noche para descargar fácilmente. La página de descarga anterior también incluye los binarios OpenSSL necesarios para admitir SSL. ICS V8 admite proyectos Delphi de 64 bits y Mac OS-X. Tenga en cuenta que las versiones de C ++ Builder compatibles son hasta XE3, 10.2 Tokio y más tarde. Actualmente no hay paquetes C ++ para XE4 a 10.1. Pero los más antiguos o más nuevos a menudo funcionarán.
La última versión es V8.64, que será informada por la constante de derechos de autor en Overbyteicswsocket.pas y la Integer WSocketversion como 864.
ICS V9 está en desarrollo temprano y está planeado para admitir Android y Linux Server. No hay planes actuales para ICS para iOS.
svn: //svn.overbyte.be/ics/trunk o https://svn.overbyte.be/svn/ics/trunk
(UserCode = ICS, Password = ICS)
ICS V8 ha sido diseñado para Embarcadero Delphi 2009 y UP, y C ++ Builder 2009 y Up, pero es totalmente compatible con Borland Delphi 7 y Codegear 2006 y 2007. Embarcadero Rad Studio incluye Delphi y C ++ Builder.
https://www.embarcadero.com/
Con Delphi XE2 y posterior, los objetivos de Windows VCL de 64 bits son compatibles con Delphi solamente. Actualmente, Firemonkey es parcialmente compatible con Delphi (todavía hay algunos componentes no portados). ICS para Mac OSX es actualmente experimental.
El archivo zip tiene subdirectorios en él. Debe usar la opción Winzip "Usar nombres de carpetas" para restaurar este árbol de directorio o tendrá problemas porque los archivos no estarían en sus subdirectorios adecuados.
Tenga en cuenta que la mayoría de estos directorios se nombran de manera diferente a ICS V7 y antes, para aliviar el soporte de múltiples versiones de Delphi y plataformas, y para aliviar la ubicación de proyectos de muestra similares. No instale V8 en una instalación V7 existente, será un desastre de lo antiguo y lo nuevo.
Este es el nuevo diseño de subdirectorio V8:
. Info directory
.Install Component packages project groups for all versions
.Packages (was DelphiVc32) Delphi (7 and up) and C++Builder (2006 and up) packages projects
.Source (was DelphiVc32) ICS Delphi source code built into packages
.SourceInclude (was DelphiVc32) .inc files (including OverbyteIcsDefs.inc)
.SourceExtras (was DelphiVc32) Extra source code not built into packages
.Sourcezobj125 (was DelphiVc32) ZLIB C OBJ include files
.Lib Unit output directories for all package builds, subdirectories
| for 2007+ will be created on building the packages
$(Config) Release / Debug
|
$(Platform) Win32 / Win64 / OSX32
|
<delphi_version> D7..XE8, 10 Seattle includes .dcu and .dfm files for Delphi
and .obj and .hpp files for C++ Builder
.Samples Delphi Win32/Win64 common source for all demos
.SamplesdelphiBroswerDemo Delphi Win32/Win64 Web Browser sample application (all Delphi versions)
.SamplesdelphiBroswerDemoResources Resource file, web pages and movie linked into browser demo
.SamplesdelphiFtpDemos Delphi Win32/Win64 FTP sample applications (all Delphi versions)
.SamplesdelphiMailNewsDemos Delphi Win32/Win64 SMTP, POP3, NNTP sample applications (all Delphi versions)
.SamplesdelphiMiscDemos Delphi Win32/Win64 Miscellaneous applications (all Delphi versions)
.SamplesdelphiOtherDemos Delphi Win32/Win64 DNS, Ping, SNMP, Syslog sample applications (all Delphi versions)
.SamplesdelphiPlatformDemos Delphi FireMonkey and cross-platform samples (Delphi XE2+)
.SamplesdelphiSocketDemos Delphi Win32/Win64 Socket sample applications (all Delphi versions)
.Samplesdelphisslinternet Delphi Win32/Win64 SSL-enabled sample applications (all Delphi versions)
.SamplesdelphiWebDemos Delphi Win32/Win64 HTTP sample applications (all Delphi versions)
.SamplesdelphiWebDemosWebAppServerData Directory for WebAppServ demo data files
.SamplesdelphiWebDemosWebServData Directory for WebServ demo data files
.Samplescppinternet C++Builder sample applications
.Samplescppinternetcb2006 C++Builder 2006 projects
.Samplescppinternetcb2007 C++Builder 2007 projects
.Samplescppinternetcb2009 C++Builder 2009 projects
.Samplescppinternetcb2010 C++Builder 2010 projects
.SamplescppinternetcbXE C++Builder XE projects
.SamplescppinternetcbXE2 C++Builder XE2 projects
Actualización y reinstalación
Desinstale un paquete ICS existente (menú | Componente | Instale paquetes, seleccione el paquete de componentes y haga clic en Eliminar).
Cambie el nombre del directorio de ICS antiguo y descomprima a un directorio nuevo o vacío, elimine la ruta anterior de la ruta de la biblioteca y agregue el directorio nuevo. Fuente a la ruta de la biblioteca en Herramientas | Opciones | ... o el subdirectorio apropiado. Lib según la versión, es decir, lib debug win32 d2007 para Delphi 2007.
Este último tiene la ventaja de que el código fuente del ICS no se volverá a compilar cada vez que se construya su proyecto. También bajo herramientas | Opciones | ... Agregue el directorio nuevo. Fuente a la ruta de navegación.
Todas las versiones de Builder Delphi y C ++/Win32
Siempre actualice su compilador con la última actualización disponible desde Embarcadero. Actualice siempre su sistema con http://windowsupdate.microsoft.com
SSL o no SSL?
Por defecto, el código SSL se compila en el paquete de tiempo de ejecución y se instalan componentes adicionales habilitados para SSL. Para no compilar el código SSL en el paquete de tiempo de ejecución y no instalar los componentes habilitados para SSL, debe eliminar el uso de uso_ssl condicional del paquete de tiempo de ejecución y tiempo de diseño.
Sin embargo, si no crea sus aplicaciones con paquetes de tiempo de ejecución, se recomienda construir los paquetes con la configuración predeterminada. El código SSL se compilará en sus aplicaciones dependiendo de si la define condicional define use_ssl se establece en las opciones del proyecto o no (esto requiere tener el directorio de fuente. En la ruta de la biblioteca o en la ruta de búsqueda de proyectos).
El uso real de SSL en sus aplicaciones también requiere los archivos OpenSSL libcrypto-1_1.dll (o libcrypto-1_1-x64.dll) y libssl-1_1.dll (o libssl-1_1-x64) .dll está disponible en algún lugar en la ruta. La distribución del ICS incluye los últimos archivos Win32 OpenSSL en el directorio. OpenSSL-WIN32 y las cuatro DLL principales duplicadas en. Muestras delphi sslinternet para muestras Win32 y Win64.
Nota OpenSSL 1.1.1 y más tarde solo admite Windows Vista y más tarde, y Windows Server 2008 y más tarde, no Windows XP.
Se pueden descargar otros archivos OpenSSL, incluidos los mayores y Win64,:
http://wiki.overbyte.eu/wiki/index.php/ics_download
Tenga en cuenta que el soporte de OpenSSL para 1.0.2 y 1.1.0 ha cesado con no más soluciones de seguridad, pero ICS continuará apoyándolos hasta finales de 2020. Pero se mueva a 1.1.1 para el cual el soporte continuará con OpenSSL hasta finales de 2023 y por ICS durante un año más. Los IC ya no comenzarán con OpenSSL 0.9.8 o 1.0.0.
Instalación utilizando los grupos de proyectos de instalación
Para cada grupo de proyectos de la versión One de Delphi y C ++ Builder se proporciona en el directorio. Instalar:
Delphi 7 : D7Install.bpg
Delphi 2006 : D2006Install.bdsgroup
Delphi 2007 : D2007Install.groupproj
Delphi 2009 : D2009Install.groupproj
Delphi 2010 : D2010Install.groupproj
Delphi XE : DXeInstall.groupproj
Delphi XE2 : DXe2Install.groupproj // VCL only, no FireMonkey components
Delphi XE2 : DXe2InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi XE3 : DXe3Install.groupproj // VCL only, no FireMonkey components
Delphi XE3 : DXe3InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi XE4 : DXe4Install.groupproj // VCL only, no FireMonkey components
Delphi XE4 : DXe4InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi XE5 : DXe5Install.groupproj // VCL only, no FireMonkey components
Delphi XE5 : DXe5InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi XE6 : DXe6Install.groupproj // VCL only, no FireMonkey components
Delphi XE6 : DXe6InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi XE7 : DXe7Install.groupproj // VCL only, no FireMonkey components
Delphi XE7 : DXe7InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi XE8 : DXe8Install.groupproj // VCL only, no FireMonkey components
Delphi XE8 : DXe8InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi 10 Seattle : D10SInstall.groupproj // VCL only, no FireMonkey components
Delphi 10 Seattle : D10SInstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi 10.1 Berlin : D101Install.groupproj // VCL only, no FireMonkey components
Delphi 10.1 Berlin : D101InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi 10.2 Tokyo : D102Install.groupproj // VCL only, no FireMonkey components
Delphi 10.2 Tokyo : D102InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi 10.3 Rio : D103Install.groupproj // VCL only, no FireMonkey components
Delphi 10.3 Rio : D103InstallVclFmx.groupproj // Both VCL and FireMonkey components
Delphi 10.4 Sydney : D104Install.groupproj // VCL only, no FireMonkey components
Delphi 10.4 Sydney : D104InstallVclFmx.groupproj // Both VCL and FireMonkey components
C++ Builder 2006 : CB2006Install.bdsgroup
C++ Builder 2007 : CB2007Install.groupproj
C++ Builder 2009 : CB2009Install.groupproj
C++ Builder 2010 : CB2010Install.groupproj
C++ Builder XE : CBXeInstall.groupproj
C++ Builder XE2 : CBXe2Install.groupproj // VCL only no FireMonkey components
C++ Builder XE2 : CBXe2InstallVclFmx.groupproj // Both VCL and FireMonkey components
C++ Builder XE3 : CBXe3InstallVclFmx.groupproj // Both VCL and FireMonkey components
C++ Builder 10.2 Tokyo : CB102InstallVclFmx.groupproj // Both VCL and FireMonkey components
C++ Builder 10.3 Rio : CB103InstallVclFmx.groupproj // Both VCL and FireMonkey components
C++ Builder 10.4 Sydney : CB104InstallVclFmx.groupproj // Both VCL and FireMonkey components
1 - Haga un archivo/abrir el proyecto, navegue al directorio de instalación, seleccione el archivo correcto y ábralo. La vista del gerente del proyecto ahora debe mostrar dos proyectos de paquetes, un tiempo de ejecución y un paquete de tiempo de diseño. El nombre del paquete de tiempo de ejecución contiene el sufijo "Ejecutar". El nombre del paquete de tiempo de diseño contiene el sufijo de "diseño".
2 - Seleccione y cree el paquete de tiempo de ejecución (no instale).
3 - Seleccione e instale el paquete de tiempo de diseño.
Después de unos segundos, debe tener un cuadro de diálogo que le indique que el paquete se ha instalado con un montón de nuevos componentes registrados en la paleta de herramientas en "Overbyte ICS" y "Overbyte ICS SSL". Luego haga un "salvo todo" y un "cierre todo".
4 - Se instala un paquete, llamado 'Overbyte ICS Design -Time Package para Delphi XXX'.
5 - Varios directorios debajo. Muestras Delphi Incluyen muestras que ilustran el uso de todos los componentes ICS, ver más tarde.
6 - Alternativamente, las versiones recientes de Delphi tienen un panel de grupos de construcción en el administrador del proyecto, abierto haciendo clic en el botón AA. Esto permite crear múltiples paquetes con múltiples configuraciones y plataformas con un solo clic. Después del edificio, el paquete de diseño de 32 bits aún debe instalarse manualmente.
7 - Tenga en cuenta que algunos proyectos SSL pueden necesitar estos archivos (o similares) agregando:
"C:Program Files (x86)CodeGearRAD Studio6.0libpsdkcrypt32.lib"
"C:Program Files (x86)CodeGearRAD Studio6.0libpsdkcryptui.lib"
También defina Security_Win32 en el proyecto que debería permitir que OverByteicssspi.hpp se construya bien.
Paquetes de plataforma cruzada de Firemonkey:
1 - Para XE2 y posterior, DXE? Instalar (¿Dónde? ¿La versión) instala solo los componentes VCL, mientras que DXE? InstallVCLFMX también instala los componentes de la plataforma Cross Crosskey (tres paquetes de tiempo de ejecución). Para usar esta función, primero desinstale el paquete antiguo de tiempo de diseño.
2-Cree los tres paquetes de tiempo de ejecución para todas las plataformas disponibles (Windows de 32 bits y 64 bits y Mac OS X) en el orden en que se enumeran en Project Manager.
3 - A continuación, cree e instale los tres paquetes de tiempo de diseño en el pedido que figuran en Project Manager.
4 - Se instalan tres paquetes, llamados:
'Overbyte ICS Common Design-Time Package for Delphi xxx'
'Overbyte ICS FMX Design-Time Package for Delphi xxx'
'Overbyte ICS VCL Design-Time Package for Delphi xxx'
Tenga en cuenta que el nuevo empaque sigue beta/alfa, tanto los nombres de los paquetes como las unidades incluidas pueden cambiar en una futura caída beta. Los viejos paquetes de VCL todavía están allí, sin embargo, ya no admiten Firemonkey y, por supuesto, solo se puede instalar un conjunto de paquetes en el IDE al mismo tiempo, si desea que VCL y FMX instalen DXE2Installvclfmx.GrouppoROJ solamente. Actualmente, el caché del paquete XE2 es erróneo y debe deshabilitarse agregando el parámetro -nocache.
5 - Alternativamente, las versiones recientes de Delphi tienen un panel de grupos de compilación en el administrador del proyecto, abierto haciendo clic en el botón AA. Esto permite crear múltiples paquetes con múltiples configuraciones y plataformas con un solo clic. Después del edificio, los paquetes de diseño de 32 bits aún deben instalarse uno por uno.
6 - La carpeta. Samples delphi PlatformDemos contiene proyectos de muestra de Firemonkey que pueden construirse con Firemonkey para Mac OS X (y Windows).
Instalación alternativa utilizando los archivos del proyecto del paquete:
Para cada Delphi y C ++ Builder Versión dos archivos del proyecto del proyecto existen en el directorio. PACKAGES. Un archivo de proyecto de paquete de tiempo de ejecución y un paquete de tiempo de diseño. El nombre del archivo de tiempo de ejecución contiene el sufijo "Ejecutar". El nombre del archivo de tiempo de diseño contiene el sufijo "Diseño".
Nombres de archivo del proyecto de paquete - VCL:
Delphi 7 : OverbyteIcsD7Run.dpk, OverbyteIcsD7Design.dpk
Delphi 2006 : OverbyteIcsD2006Run.bdsproj, OverbyteIcsD2006Design.bdsproj
Delphi 2007 : OverbyteIcsD2007Run.dproj, OverbyteIcsD2007Design.dproj
Delphi 2009 : OverbyteIcsD2009Run.dproj, OverbyteIcsD2009Design.dproj
Delphi 2010 : OverbyteIcsD2010Run.dproj, OverbyteIcsD2010Design.dproj
Delphi XE : OverbyteIcsDXeRun.dproj, OverbyteIcsDXeDesign.dproj
Delphi XE2 : OverbyteIcsDXe2Run.dproj, OverbyteIcsDXe2Design.dproj
Delphi XE3 : OverbyteIcsDXe3Run.dproj, OverbyteIcsDXe3Design.dproj
Delphi XE4 : OverbyteIcsDXe4Run.dproj, OverbyteIcsDXe4Design.dproj
Delphi XE5 : OverbyteIcsDXe5Run.dproj, OverbyteIcsDXe5Design.dproj
Delphi XE6 : OverbyteIcsDXe6Run.dproj, OverbyteIcsDXe6Design.dproj
Delphi XE7 : OverbyteIcsDXe7Run.dproj, OverbyteIcsDXe7Design.dproj
Delphi XE8 : OverbyteIcsDXe8Run.dproj, OverbyteIcsDXe8Design.dproj
Delphi 10 Seattle : OverbyteIcsD10SRun.dproj, OverbyteIcsD10SDesign.dproj
Delphi 10.1 Berlin : OverbyteIcsD101Run.dproj, OverbyteIcsD101Design.dproj
Delphi 10.2 Tokyo : OverbyteIcsD102Run.dproj, OverbyteIcsD102Design.dproj
Delphi 10.3 Rio : OverbyteIcsD103Run.dproj, OverbyteIcsD103Design.dproj
Delphi 10.4 Sydney : OverbyteIcsD104Run.dproj, OverbyteIcsD103Design.dproj
C++ Builder 2006 : OverbyteIcsCB2006Run.bdsproj, OverbyteIcsCB2006Design.bdsproj
C++ Builder 2007 : OverbyteIcsCB2007Run.cbproj, OverbyteIcsCB2007Design.cbproj
C++ Builder 2009 : OverbyteIcsCB2009Run.cbproj, OverbyteIcsCB2009Design.cbproj
C++ Builder 2010 : OverbyteIcsCB2010Run.cbproj, OverbyteIcsCB2010Design.cbproj
C++ Builder XE : OverbyteIcsCBXeRun.cbproj, OverbyteIcsCBXeDesign.cbproj
C++ Builder XE2 : OverbyteIcsCBXe2Run.cbproj, OverbyteIcsCBXe2Design.cbproj
C++ Builder XE3 : OverbyteIcsCBXe3Run.cbproj, OverbyteIcsCBXe3Design.cbproj
Nombres de archivo de proyecto de paquete - Firemonkey y VCL:
Delphi XE2 FMX/VCL : IcsCommonDXe2Run.dproj, IcsCommonDXe2Design.dproj
Delphi XE2 VCL : IcsVclDXe2Run.dproj, IcsVclDXe2Design.dproj
Delphi XE2 FMX : IcsFmxDXe2Run.dproj, IcsFmxDXe2Design.dproj
Delphi XE3 FMX/VCL : IcsCommonDXe3Run.dproj, IcsCommonDXe3Design.dproj
Delphi XE3 VCL : IcsVclDXe3Run.dproj, IcsVclDXe3Design.dproj
Delphi XE3 FMX : IcsFmxDXe3Run.dproj, IcsFmxDXe3Design.dproj
Delphi XE4 FMX/VCL : IcsCommonDXe4Run.dproj, IcsCommonDXe4Design.dproj
Delphi XE4 VCL : IcsVclDXe4Run.dproj, IcsVclDXe4Design.dproj
Delphi XE4 FMX : IcsFmxDXe4Run.dproj, IcsFmxDXe4Design.dproj
Delphi XE5 FMX/VCL : IcsCommonDXe5Run.dproj, IcsCommonDXe5Design.dproj
Delphi XE5 VCL : IcsVclDXe5Run.dproj, IcsVclDXe5Design.dproj
Delphi XE5 FMX : IcsFmxDXe5Run.dproj, IcsFmxDXe5Design.dproj
Delphi XE6 FMX/VCL : IcsCommonDXe6Run.dproj, IcsCommonDXe6Design.dproj
Delphi XE6 VCL : IcsVclDXe6Run.dproj, IcsVclDXe6Design.dproj
Delphi XE6 FMX : IcsFmxDXe6Run.dproj, IcsFmxDXe6Design.dproj
Delphi XE7 FMX/VCL : IcsCommonDXe7Run.dproj, IcsCommonDXe7Design.dproj
Delphi XE7 VCL : IcsVclDXe7Run.dproj, IcsVclDXe7Design.dproj
Delphi XE7 FMX : IcsFmxDXe7Run.dproj, IcsFmxDXe7Design.dproj
Delphi XE8 FMX/VCL : IcsCommonDXe8Run.dproj, IcsCommonDXe8Design.dproj
Delphi XE8 VCL : IcsVclDXe8Run.dproj, IcsVclDXe8Design.dproj
Delphi XE8 FMX : IcsFmxDXe8Run.dproj, IcsFmxDXe8Design.dproj
Delphi 10 Seattle FMX/VCL : IcsCommonD10SRun.dproj, IcsCommonD10SDesign.dproj
Delphi 10 Seattle VCL : IcsVclD10SRun.dproj, IcsVclD10SDesign.dproj
Delphi 10 Seattle FMX : IcsFmxD10SRun.dproj, IcsFmxD10SDesign.dproj
Delphi 10.1 Berlin FMX/VCL : IcsCommonD101Run.dproj, IcsCommonD101Design.dproj
Delphi 10.1 Berlin VCL : IcsVclD101Run.dproj, IcsVclD101Design.dproj
Delphi 10.1 Berlin FMX : IcsFmxD101Run.dproj, IcsFmxD101Design.dproj
Delphi 10.2 Tokyo FMX/VCL : IcsCommonD102Run.dproj, IcsCommonD102Design.dproj
Delphi 10.2 Tokyo VCL : IcsVclD102Run.dproj, IcsVclD102Design.dproj
Delphi 10.2 Tokyo FMX : IcsFmxD102Run.dproj, IcsFmxD102Design.dproj
Delphi 10.3 Rio FMX/VCL : IcsCommonD103Run.dproj, IcsCommonD103Design.dproj
Delphi 10.3 Rio VCL : IcsVclD103Run.dproj, IcsVclD103Design.dproj
Delphi 10.3 Rio FMX : IcsFmxD103Run.dproj, IcsFmxD103Design.dproj
Delphi 10.4 Sydney FMX/VCL : IcsCommonD104Run.dproj, IcsCommonD104Design.dproj
Delphi 10.4 Sydney VCL : IcsVclD104Run.dproj, IcsVclD104Design.dproj
Delphi 10.4 Sydney FMX : IcsFmxD104Run.dproj, IcsFmxD104Design.dproj
C++ Builder XE2 FMX/VCL : IcsCommonCBXe2Run.dproj, IcsCommonDXe2Design.dproj
C++ Builder XE2 VCL : IcsVclCBXe2Run.dproj, IcsVclCBXe2Design.dproj
C++ Builder XE2 FMX : IcsFmxCBXe2Run.dproj, IcsFmxCBXe2Design.dproj
C++ Builder XE3 FMX/VCL : IcsCommonCBXe3Run.dproj, IcsCommonDXe3Design.dproj
C++ Builder XE3 VCL : IcsVclCBXe3Run.dproj, IcsVclCBXe3Design.dproj
C++ Builder XE3 FMX : IcsFmxCBXe3Run.dproj, IcsFmxCBXe3Design.dproj
C++ Builder 10.2 Tokyo VCL : IcsVclCB102Run.dproj, IcsVclCB102Design.dproj
C++ Builder 10.2 Tokyo FMX : IcsFmxCB102Run.dproj, IcsFmxCB102Design.dproj
C++ Builder 10.3 Rio VCL : IcsVclCB103Run.dproj, IcsVclCB103Design.dproj
C++ Builder 10.3 Rio FMX : IcsFmxCB103Run.dproj, IcsFmxCB103Design.dproj
C++ Builder 10.4 Sydney VCL: IcsVclCB104Run.dproj, IcsVclCB104Design.dproj
C++ Builder 10.4 Sydney FMX: IcsFmxCB104Run.dproj, IcsFmxCB104Design.dproj
1 - Abra y construya el proyecto del paquete de tiempo de ejecución (¡no instale!).
2 - Abra e instale el proyecto de paquete de tiempo de diseño. (Haga un archivo/abrir el proyecto, navegue al directorio. PACTAGES. Seleccione el archivo correcto y abríjelo. Luego, en la vista del administrador del proyecto, haga clic con el botón derecho en el paquete, luego haga clic en el botón de compilación o instalación).
3-Para Delphi XE2 y posterior, se puede construir un paquete de tiempo de ejecución de 64 bits cambiando la plataforma de destino del paquete a ventanas de 64 bits. Esto tiene el mismo nombre que el paquete de 32 bits, por lo que se debe especificar un directorio de salida de paquete diferente en herramientas / opciones / opciones de Delphi para ventanas de 64 bits.
Después de unos segundos, debe tener un cuadro de diálogo que le indique que el paquete se ha instalado con un montón de nuevos componentes registrados en la paleta de herramientas en "Overbyte ICS" y "Overbyte ICS SSL". Luego haga un "salvo todo" y un "cierre todo".
Delphi 2006/win32, 2007/win32, 2009/win32, 2010/win32, xe/win32:
Después de instalar el paquete, verifique que se haya agregado la ruta de biblioteca Win32 apropiada (herramientas / opciones / opciones de Delphi / biblioteca - win32 / biblioteca), se ha agregado el subdirectorio. Lib de acuerdo con la versión, es decir, lib debug win32 d2007 para Delphi 2007. Si no, agregue manualmente. No es obligatorio agregar. Lib a la ruta global de Delphi, pero será mucho más fácil para usted porque de lo contrario tendrá que agregarlo a cada proyecto.
Delphi xe2/win32, xe3/win32, xe4/win32, xe5/win32, xe6/win32, xe7/win32, xe8/win32, 10 seattle/win32, 10.1 berlín/win32, 10.2 tokyo/win32, 10.3 rio/win32, 10.4 sydney/win32, xe2/win64, win64, win62 Xe3/Win64, Xe4/Win64, Xe5/Win64, Xe6/Win64, Xe7/Win64, Xe8/Win64, 10 Seattle/Win64, 10.1 Berlín/Win64, 10.2 Tokio/Win64, 10.3 Rio/Win64, 10.4 Sydney/Win64:
Similar a lo anterior, pero ahora un nivel adicional, por lo que herramientas / opciones / idioma / delphi / biblioteca / plataforma seleccione como Windows de 32 bits o 64 bits, o macOS 32 bits o 64 bits. Nota La ruta de la biblioteca se especifica por separado para plataformas de 32 bits y 64 bits. Cuidar de Delphi parece predeterminado a la plataforma de 64 bits, y debe cambiarse a PlaForm de 32 bits antes de configurar la ruta de la biblioteca ,. libs subdirectorio de acuerdo con la versión, es decir, lib debug win64 d103 para Delphi 10.3 rio 64-bit,
Delphi 7: Agregue la ruta del directorio VC32 a la ruta de su biblioteca (Menú Herramientas / Opciones de entorno / Biblioteca / Biblioteca.
Muestra proyectos de Delphi
Una vez que se instala el paquete, puede abrir los proyectos de muestra. Hay alrededor de 95 muestras divididas en varios directorios de acuerdo con los protocolos, con un grupo de proyectos que se puede abrir en todas las versiones de Delphi.
.SamplesdelphiAllDemosProject.bpg
.SamplesdelphiBroswerDemo
.SamplesdelphiFtpDemosFtpDemos.bpg
.SamplesdelphiMailNewsDemosMailNewsDemos.bpg
.SamplesdelphiMiscDemosMiscDemos.bpg
.SamplesdelphiOtherDemosOtherDemos.bpg
.SamplesdelphiPlatformDemosXSamples.groupproj
.SamplesdelphiSocketDemosSocketDemos.bpg
.SamplesdelphisslinternetSslDemos.bpg
.SamplesdelphiWebDemosWebDemos.bpg
Los detalles completos de los proyectos de muestra individuales se muestran más adelante en este documento.
AllDimosProject.bpg contiene las 94 muestras excepto BrowserDemo (que necesita un componente de terceros instalado). Pero construir todas las muestras de la misma manera requiere mucha memoria y no fue posible hasta Delphi 10 Seattle y más tarde, lo que ha mejorado la gestión de la memoria. Las versiones anteriores de Delphi se compilarán entre sí el grupo de proyectos.
Es posible que obtenga un cuadro de diálogo que le indique que faltan archivos de recursos (es posible que no se hayan incluido en el archivo ZIP para guardar espacio) y que Delphi recree. Está bien. Cualquier otro mensaje de error es un problema que debe solucionar. Después de que se hayan recreado todos los archivos de recursos, debería ver en el gerente de proyectos un grupo de proyectos.
Para compilar todas las muestras en el grupo a la vez, realice un proyecto / cree todos los proyectos. Esto puede llevar unos minutos.
Nota Delphi tiene advertencias que desencadenan muchos mensajes para el código 100% OK. Puede apagar esas advertencias en el proyecto / opciones / mensajes del compilador y anular la selección: "símbolo desaprobado", "símbolo de plataforma", "tipo inseguro", "código inseguro", "typecast inseguro". Esos están destinados a la portabilidad .NET y Linux. Puede ignorarlos de manera segura si ejecuta Windows. Para su instalación, incluí una utilidad setProjectOptions (código fuente, debe compilarla) en el directorio de Internet. Esta utilidad actualizará las opciones del proyecto para deshabilitar las advertencias.
Una vez que los componentes están instalados, puede abrir los proyectos de muestra cada uno tras otro y compilarlos. Para cada proyecto, haga archivo/abra y seleccione el archivo DPR en el directorio de Internet. Luego proyecte/construya todo.
C ++ Builder 2006, 2007, 2009, 2010, Xe, Xe2, Xe3, 10.2 Tokio, 10.3 Rio, 10.4 Sydney:
Siga el procedimiento de instalación descrito para Delphi 2006. Simplemente cambie el grupo de proyecto y el nombre del paquete: Use CB2006, CBXE, etc., ver arriba. No puede tener los paquetes Delphi 2006 y Cbuilder 2006 instalados al mismo tiempo en el IDE. Entonces, al cambiar de uno a otro, asegúrese de eliminar el que no necesita.
La instalación de Embarcadero agrega esto a la ruta del sistema:
C: Users public Documents Embarcadero Studio 20.0 BPL
Sin embargo, esto no permite que se instalen los paquetes WIN32, para hacerlo, debe agregar esta ruta a la ruta del sistema (Win10 = Inicio, editar las variables de entorno del sistema, variables de entorno, variables del sistema, ruta, edición, nueva :)
C: Users public Documents Embarcadero Studio 20.0 bpl win32
Nuevos proyectos que necesitan usar ICS:
incluir el camino:
camino de la biblioteca
La construcción de los paquetes Firemonkey CBXE2InstallVCLFMX C ++ para OSX puede activar un error ILINK32, este es un error en C ++ Builder informado como QC #103668 Los paquetes Win32 deberían incorporarse sin errores.
Una vez que los componentes están instalados, puede abrir los proyectos de muestra cada uno tras otro y compilarlos. Para cada proyecto, haga archivo/abra y seleccione el archivo DPR en el directorio de Internet. Luego proyecte/construya todo. Los proyectos se encuentran en muestras cpp Internet CB2006 (o CB2006, CBXE, etc.) con un grupo de proyectos en cada directorio, OverByteicscb2006sam.bdsgroup, Overbyteicscbxe2sam.Grouproj, etc. Es probable que para cada proyecto, c ++ Builder, se queja de un archivo .res desaparecido. Esto no es un problema, C ++ Builder lo recreará según sea necesario. No han sido incluidos para ahorrar espacio en el archivo zip.
Una vez que los componentes están instalados, puede abrir los proyectos de muestra cada uno tras otro y compilarlos. Para cada proyecto, haga archivo/abra y seleccione el archivo DPR en el directorio de Internet. Luego proyecte/construya todo.
Notas:
Es posible que tenga un mensaje de error, utilizando Delphi o C ++ Builder quejándose de Font.Charset, OldCreateRoRord y otras propiedades. Esas son nuevas propiedades en las nuevas versiones de Builder Delphi o C ++, más nuevas que la versión que usa. Puede ignorar de manera segura esos errores porque esas propiedades no son utilizadas por los componentes ni los programas de muestra. Puede encontrar este error en el tiempo de ejecución. Para evitarlo, debe abrir cada formulario en el momento de diseño e ignorar el error. Luego recompilar. Si no ignora el error en la hora de diseño, ¡lo tendrá en tiempo de ejecución!
Si tiene Delphi o C ++ Builder que se queja de un archivo que no se encuentra, agregue. Directorio de origen a su ruta de biblioteca.
Si está utilizando C ++ Builder, puede encontrar un error en la hora de enlace, como "No se puede abrir el archivo MWBCB30.lib" (u otras libs). Este es un error en C ++ Builder. Para resolverlo, puede editar el archivo de opciones de proyecto (haga clic derecho en el administrador del proyecto) y elimine cualquier referencia a las bibliotecas que faltan.
No olvide que los componentes del constructor C ++ se encuentran en. Delphi VC32, que es el código fuente de objeto Pascal (no es un problema para el constructor C ++, solo indique que los archivos *.pas se muestran al instalar). C ++ Builder creará los archivos *.HPP. Hay algunos archivos de ayuda en línea en el directorio VC32.
La siguiente es una lista de los archivos que deben instalarse para agregar correctamente todos los componentes disponibles en esta colección:
> OverbyteIcsCharsetComboBox.pas Provides easy MIME charset selection
> OverbyteIcsDnsQuery DNS lookup component - useful for getting MX records
> OverbyteIcsDprUpdFix.pas IDE plugin for Delphi 2009 and 2010 to update old projects
> OverbyteIcsEmulVT.pas ANSI terminal emulation in a control
> OverbyteIcsFileCopy.pas Indexing, copying and deleting of multiple file directories
> OverbyteIcsFileCopyW.pas Same as OverbyteIcsFileCopy but Unicode for Delphi 2007.
> OverbyteIcsFingCli.pas FINGER client protocol - Find information about user
> OverbyteIcsFtpCli.pas FTP client protocol - file transfer
> OverbyteIcsFtpCliW.pas Same as OverbyteIcsFtpCli but Unicode for Delphi 2007.
> OverbyteIcsFtpMulti.pas FTP client that indexes, uploads or downloads multiple files
> OverbyteIcsFtpMultiW.pas Same as OverbyteIcsFtpMulti but Unicode for Delphi 2007.
> OverbyteIcsFtpSrv.pas FTP server protocol - file transfer
> OverbyteIcsFtpSrvT.pas FTP server protocol - helpers
> OverbyteIcsFtpSrvW.pas Same as OverbyteIcsFtpSrvW but Unicode for Delphi 2007.
> OverbyteIcsHttpAppServer.pas HTTP server protocol - used to build advanced web servers
> OverbyteIcsHttpMulti.pas HTTP client that downloads multiple files from a list or by parsing web links
> OverbyteIcsHttpMultiW.pas Same as OverbyteIcsHttpMulti but Unicode for Delphi 2007.
> OverbyteIcsHttpProt.pas HTTP client protocol - used by the web
> OverbyteIcsHttpSrv.pas HTTP server protocol - used to build web servers
> OverbyteIcsIpStreamLog.pas IP stream logging, using TCP Client or Server, UDP Client or Server, sends simple text
> OverbyteIcsLogger.pas A component to log information
> OverbyteIcsMailQueue.pas SMTP Mail Queue with extended retries, multiple SMTP servers or MX look up
> OverbyteIcsMimeDec.pas MIME component - decode file attach, use with POP3
> OverbyteIcsMultiProgressBar.pas A segmented progress bar
> OverbyteIcsMultipartFtpDownloader.pas FTP client protocol - download one file using simultaneous connections to speedup download
> OverbyteIcsMultipartHttpDownloader.pas HTTP client protocol - download one file using simultaneous connections to speedup download
> OverbyteIcsNntpCli.pas NNTP client protocol - send and receive newsgroups messages
> OverbyteIcsPing.pas ICMP echo protocol - ping a host
> OverbyteIcsPop3Prot.pas POP3 client protocol - get mail from mail server
> OverbyteIcsProxy.pas Proxy server protocol - HTTP forward and reverse proxy, and others
> OverbyteIcsReg.pas Register design components
> OverbyteIcsSmtpProt.pas SMTP client protocol - send mail to server
> OverbyteIcsSmtpSrv.pas SMTP server protocol - receive mail from client
> OverbyteIcsSnmpCli.pas SNMP client protocol - network management
> OverbyteIcsSnmpMsgs.pas SNMP client protocol - message helper
> OverbyteIcsSntp.pas Time server and client supporting SNTP time protocol
> OverbyteIcsSslHttpRest.pas HTTPS REST functions, descends from THttpCli, includes OAuth2, Send SMS and DNS over HTTPS
> OverbyteIcsSysLogClient.pas Syslog Client Protocol - receive syslog messages
> OverbyteIcsSysLogDefs.pas Syslog Protocol - helpers
> OverbyteIcsSysLogServer.pas Syslog Server Protocol - send syslog messages
> OverbyteIcsTnCnx.pas TELNET client protocol - terminal emulation protocol
> OverbyteIcsTnEmulVT.pas TELNET and ANSI terminal emulation combined
> OverbyteIcsTnOptFrm.pas TELNET Client configuration form
> OverbyteIcsTnScript.pas TELNET client protocol - with automation
> OverbyteIcsWebSockets.pas WebSockets Server protocol
> OverbyteIcsWSocket.pas Winsock component - TCP, UDP, DNS,...
> OverbyteIcsWSocketE.pas Register procedure and property editor for TWSocket
> OverbyteIcsWSocketS.pas Winsock component for building servers
> OverbyteIcsWSocketTS.pas Winsock component for building multithreaded servers
> OverbyteIcsWhoisCli.pas Whois protocol client
Las siguientes unidades de soporte y utilidades de la lista:
> OverbyteIcsAsn1Utils.pas ASN1 utilities (for TSnmpClient component)
> OverbyteIcsAvlTrees.pas Implements a fast cache-like data storage
> OverbyteIcsBlacklist.pas Blacklisting of malicious IP addresses, logging functions
> OverbyteIcsCRC.pas 32 bit CRC computation
> OverbyteIcsCharsetUtils.pas MIME-charset functions
> OverbyteIcsCookies.pas Client Cookie Handling
> OverbyteIcsCsc.pas character set routines
> OverbyteIcsDES.pas Implementation of the Data Encryption Standard (DES)
> OverbyteIcsDigestAuth.pas HTTP Digest Access Authentication
> OverbyteIcsFormDataDecoder.pas Decode a MIME data block as generated by a HTML form
> OverbyteIcsFtpSrvWT.pas Same as OverbyteIcsFtpSrvWT but Unicode for Delphi 2007.
> OverbyteIcsHtmlPars.pas HTML web page parser
> OverbyteIcsHttpCCodZLib.pas Supports GZIP coding for HttpContCod
> OverbyteIcsHttpContCod.pas HTTP Content Coding support, uses extra units
> OverbyteIcsIcmp.pas ICMP protocol support, used by the PING component
> OverbyteIcsIconv.pas Headers for iconv library (LGPL)
> OverbyteIcsLIBEAY.pas Delphi encapsulation for libeay32.dll and libcrypto-1_1.dll (OpenSSL)
> OverbyteIcsMD4.pas Implementation of the MD4 Message-Digest Algorithm
> OverbyteIcsMD5.pas Implementation of the MD5 Message-Digest Algorithm
> OverbyteIcsMLang.pas A few header translations from MS mlang.h
> OverbyteIcsMimeUtil.pas Support routines for MIME standard
> OverbyteIcsNtlmMsgs.pas Client NTLM authentification messages used within HTTP protocol
> OverbyteIcsNtlmSsp.pas Server NTLM authentification of user credentials using Windows SSPI
> OverbyteIcsOneTimePw.pas One Time Password support functions, used by FTP
> OverbyteIcsSHA1.pas Implementation of US Secure Hash Algorithm 1 (SHA1)
> OverbyteIcsSSLEAY.pas Delphi encapsulation for ssleay32.dll and libssl-1_1.dll (OpenSSL)
> OverbyteIcsSocketUtils.pas Cross platform socket utilities for ICS
> OverbyteIcsSslJose.pas JOSE - Json Object Signing and Encryption
> OverbyteIcsSslSessionCache.pas A very fast external SSL-session-cache component
> OverbyteIcsSslThrdLock.pas Implementation of OpenSsl thread locking (Windows);
> OverbyteIcsSslX509Certs.pas Automatically download SSL X509 certificates from Let's Encrypt and CertCentre AG
> OverbyteIcsSslX509Utils.pas SSL key and X509 certification creation
> OverbyteIcsSspi.pas A few header translations from MS sspi.h and security.h
> OverbyteIcsStreams.pas Fast streams for ICS
> OverbyteIcsThreadTimer.pas A custom timer class using custom timer messages from one or more threads
> OverbyteIcsTicks64.pas GetTickCount64 support for all versions of Windows
> OverbyteIcsTimeList.pas List of items with expiry times, used for WebSessions
> OverbyteIcsTypes.pas Common types, mainly for backward compiler compatibility
> OverbyteIcsURL.pas Support routines for URL handling
> OverbyteIcsUtils.pas Vast number of common utilities, many supporting Unicode for D7/2007
> OverbyteIcsWSockBuf.pas FIFO buffers for TWSocket
> OverbyteIcsWebSession.pas Web session support for THttpAppSrv and MidWare
> OverbyteIcsWinnls.pas A few header translations for Unicode Normalization in winnls.h
> OverbyteIcsWinsock.pas Some Winsock initialisations
> OverbyteIcsWMI.pas WMI support functions, setting IP addresses, controlling DNS server.
> OverbyteIcsWndControl.pas A class that encapsulates a windows message queue and a message map
> OverbyteIcsZLibDll.pas Zlib support, interface to external zlib.dll functions
> OverbyteIcsZLibObj.pas Zlib support, interface to zlib linked C OBJ functions
> OverbyteIcsZlibHigh.pas Zlib support, high level interface for compression and decompression
> WbemScripting_TLB.pas WMI API headers.
Para Delphi y C ++ Builder XE2 y posterior, las aplicaciones de escritorio Firemonkey son una alternativa a las aplicaciones de formularios VCL, que admiten plataformas cruzadas de Windows de 32 bits y Mac y Mac OS X (y quizás otras plataformas en el futuro). Firemonkey utiliza diferentes componentes visuales para VCL, mientras que algunos componentes no visuales se pueden usar para proyectos VCL y FMX, mientras que otros componentes necesitan versiones especiales, como ICS.
Las betas anteriores de V8 usaron la definición de "FMX" condicional que ya no se requiere *no se requiere en las opciones de proyecto. En su lugar, en su aplicación ICS Firemonkey existente. Agregue "ICS.FMX" a los nombres de alcance de la unidad en las opciones de proyecto o aplique los siguientes cambios en la cláusula de usos, renombrar:
OverbyteIcsBlacklist -> Ics.Fmx.OverbyteIcsBlacklist.pas
OverbyteIcsCharsetComboBox -> Ics.Fmx.OverbyteIcsCharsetComboBox.pas
OverbyteIcsDnsQuery -> Ics.Fmx.OverbyteIcsDnsQuery.pas
OverbyteIcsFileCopy -> Ics.Fmx.OverbyteIcsFileCopy.pas
OverbyteIcsFingCli -> Ics.Fmx.OverbyteIcsFingCli.pas
OverbyteIcsFtpCli -> Ics.Fmx.OverbyteIcsFtpCli
OverbyteIcsFtpMulti -> Ics.Fmx.OverbyteIcsFtpMulti.pas
OverbyteIcsFtpSrv -> Ics.Fmx.OverbyteIcsFtpSrv
OverbyteIcsHttpAppServer -> Ics.Fmx.OverbyteIcsHttpAppServer.pas
OverbyteIcsHttpMulti -> Ics.Fmx.OverbyteIcsHttpMulti.pas
OverbyteIcsHttpProt -> Ics.Fmx.OverbyteIcsHttpProt
OverbyteIcsHttpSrv -> Ics.Fmx.OverbyteIcsHttpSrv.pas
OverbyteIcsIcmp -> Ics.Fmx.OverbyteIcsIcmp.pas
OverbyteIcsIpStreamLog -> Ics.Fmx.OverbyteIcsIpStreamLog.pas
OverbyteIcsMailQueue -> Ics.Fmx.OverbyteIcsMailQueue.pas
OverbyteIcsMsSslUtils -> Ics.Fmx.OverbyteIcsMsSslUtils.pas
OverbyteIcsMultipartFtpDownloader -> Ics.Fmx.OverbyteIcsMultipartFtpDownloader.pas
OverbyteIcsMultipartHttpDownloader -> Ics.Fmx.OverbyteIcsMultipartHttpDownloader.pas
OverbyteIcsNntpCli -> Ics.Fmx.OverbyteIcsNntpCli.pas
OverbyteIcsPing -> Ics.Fmx.OverbyteIcsPing.pas
OverbyteIcsPop3Prot -> Ics.Fmx.OverbyteIcsPop3Prot.pas
OverbyteIcsProxy -> Ics.Fmx.OverbyteIcsProxy.pas
OverbyteIcsSmtpProt -> Ics.Fmx.OverbyteIcsSmtpProt.pas
OverbyteIcsSntp -> Ics.Fmx.OverbyteIcsSntp.pas
OverbyteIcsSocketUtils -> Ics.Fmx.OverbyteIcsSocketUtils.pas
OverbyteIcsSslHttpRest -> Ics.Fmx.OverbyteIcsSslHttpRest.pas
OverbyteIcsSslJose -> Ics.Fmx.OverbyteIcsSslJose.pas
OverbyteIcsSslSessionCache -> Ics.Fmx.OverbyteIcsSslSessionCache.pas
OverbyteIcsSslThrdLock -> Ics.Fmx.OverbyteIcsSslThrdLock.pas
OverbyteIcsSslX509Certs -> Ics.Fmx.OverbyteIcsSslX509Certs.pas
OverbyteIcsSslX509Utils -> Ics.Fmx.OverbyteIcsSslX509Utils.pas
OverbyteIcsThreadTimer -> Ics.Fmx.OverbyteIcsThreadTimer.pas
OverbyteIcsWSocket -> Ics.Fmx.OverbyteIcsWSocket
OverbyteIcsWSocketS -> Ics.Fmx.OverbyteIcsWSocketS
OverbyteIcsWhoisCli -> Ics.Fmx.OverbyteIcsWhoisCli.pas
OverbyteIcsWndControl -> Ics.Fmx.OverbyteIcsWndControl
{ Demo units }
OverbyteIcsWebAppServerCounter -> Ics.Fmx.OverbyteIcsWebAppServerCounter
OverbyteIcsWebAppServerMailer -> Ics.Fmx.OverbyteIcsWebAppServerMailer
La lista anterior también es la lista de unidades que ahora tienen nombres diferentes en el marco Firemonkey, sin embargo, la mayoría de ellas comparten el mismo archivo fuente.
Dejar caer un componente ICS en el formulario agregará el nombre correcto de la unidad para cada marco automáticamente (no olvide deshabilitar el caché del paquete como se describe anteriormente).
Unidad OverByteicsLibrary.pas se ha desaprobado e ICS IPv8 ya no lo usa. Si lo usó en su propio código, lea el comentario en OverByteicsLibrary.pas, busque "desaprobado".
Con V8, las 96 aplicaciones de muestra ahora se agrupan en directorios de acuerdo con la funcionalidad general, para facilitar la comparación de muestras relacionadas.
Muchas muestras son similares. Cuando busque algo, siempre mire la fecha en que se crean las demostraciones donde se crean. ¡El más reciente es siempre el mejor código! En las listas a continuación, activo !! Indica aplicaciones que se mantienen activamente para probar y apoyar una nueva funcionalidad en los componentes ICS. Estas pueden no ser muestras más simples, pero generalmente son las primeras en probar al aprender sobre un componente.
.SamplesdelphiBroswerDemo
> FrameBrowserIcs.dpr Web Browser using HtmlViewer component - ACTIVE!!
Nota Esta muestra necesita un componente htmlviewer instalado
.SamplesdelphiFtpDemosFtpDemos.bpg - Project group
> OverbyteIcsBasFtp.dpr Basic FTP client program
> OverbyteIcsConFtp.dpr Basic console mode FTP client
> OverbyteIcsFtpAsy.dpr Example of asynchronous FTP client
> OverbyteIcsFtpMulti.dpr Demo to do several FTP downloads in parallel to get a list of files
> OverbyteIcsFtpMultipartDownload.dpr Demo to FTP download a single large file in several parts in parallel
> OverbyteIcsFtpServ.dpr General purpose FTP server, uses TSocketServer - ACTIVE!!
> OverbyteIcsFtpThrd.dpr Demo of multithreaded FTP client, see also FTPASY
> OverbyteIcsFtpTst.dpr Basic graphical FTP client - ACTIVE!!
Tenga en cuenta mejores muestras en Sslinternet con SSL habilitado.
.SamplesdelphiMailNewsDemosMailNewsDemos.bpg - Project group
> OverbyteIcsBasNntp.dpr Basic NNTP client program
> OverbyteIcsConPop3.dpr Basic console mode demo for POP3 (mail receive)
> OverbyteIcsConSmtp.dpr Basic console mode demo for SMTP (mail send)
> OverbyteIcsMailHtml.dpr Example of HTML formatted EMail sending, including embedded images - ACTIVE!!
> OverbyteIcsMailRcv.dpr Internet EMail access using POP3 protocol - ACTIVE!!
> OverbyteIcsMailSnd.dpr Example of EMail sending using SMTP, including file attach - ACTIVE!!
> OverbyteIcsMailSndAsync.dpr Example of parallel EMail sending with multiple connections
> OverbyteIcsMimeDemo.dpr Example of EMail decoding (attached files are extracted) - ACTIVE!!
> OverbyteIcsNewsReader.dpr Example of TNntpCli component (Send/receive newsgroups) - ACTIVE!!
> OverbyteIcsSmtpServer.dpr Internet EMail server using SMTP protocol - ACTIVE!!
Tenga en cuenta mejores muestras en Sslinternet con SSL habilitado.
.SamplesdelphiMiscDemosMiscDemos.bpg - Project group
> OverbyteIcsBufStrmTst.dpr Test of buffered stream classes
> OverbyteIcsCacheTest.dpr Test of TCacheTree class used in TSslAvlSessionCache
> OverbyteIcsMD4Test.dpr Test program for MD4 unit
> OverbyteIcsMD5File.dpr Example of MD5 unit: computer MD5 checksum for files
> OverbyteIcsMD5Test.dpr Test program for MD5 unit
> OverbyteIcsOneTimePassword.dpr One Time Password test routines for OverByteIcsOneTimePw unit
> OverbyteIcsSHA1Test.dpr Test program for SHA unit
> OverbyteIcsThreadTimerDemo.dpr Demo for TIcsThreadTimer
> OverbyteIcsTicks64Demo.dpr GetTickCount64 test routines for OverbyteIcsTicks64 unit
> OverbyteIcsTimerDemo.dpr Very simple demo for TIcsTimer
> OverByteIcsWndControlTest.dpr Test program for windows and threads
.SamplesdelphiOtherDemosOtherDemos.bpg - Project group
> OverbyteIcsBatchDnsLookup.dpr Batch async DNS lookup using DnsLookup (IPv6 and IPv4)
> OverbyteIcsConPing.dpr Basic console mode demo for ping component
> OverbyteIcsDll1.dpr Demo showing how to use a TWSocket component in a DLL
> OverbyteIcsDll2.dpr Demo showing how to use a THttpCli component in a DLL
> OverbyteIcsDllTst.dpr Test program calling ICSDLL1 and ICSDLL2
> OverbyteIcsDnsLook.dpr Example of name resolution (IPv6 and IPv4)
> OverbyteIcsDnsResolver.dpr Batch async DNS lookup event driven using DnsQuery
> OverbyteIcsFinger.dpr Example of TFingerCli component
> OverbyteIcsNsLookup.dpr Demo for the DnsQuery component - ACTIVE!!
> OverbyteIcsPingTst.dpr Demo for the ping component, includes trace route - ACTIVE!!
> OverbyteIcsSnmpCliTst.dpr Demo for SNMP (simple network management protocol) component
> OverbyteIcsSysLogClientDemo.dpr Demo for SysLog client component
> OverbyteIcsSysLogServerDemo.dpr Demo for SysLog server component
> OverbyteIcsTimeTst.dpr Test SNTP time protocol as client or server - ACTIVE!!
> OverbyteIcsWhoisCliTst.dpr Test Whois protocol, looks up servers automatically - ACTIVE!!
> OverbyteIcsWmiTst.dpr Test WMI functions, general purpose, IP addressses and DNS Server - ACTIVE!!
Todas estas muestras se pueden construir para Mac OS X (y Windows).
.SamplesdelphiPlatformDemosXSamples.groupproj
> IcsCliDemo.dproj Example of client for SRVDEMO, IPV4 only
> IcsTcpSrvIPv6.dproj Basic server without client forms, event-driven, IPv4/IPV6
> IcsConSmtp.dproj Basic console mode demo for SMTP (mail send)
> IcsMailSnd.dproj Example of EMail sending using SMTP, including file attach
> IcsMailRcv.dproj Internet EMail access using POP3 protocol
> IcsHttpsTst.dproj Example of THttpCli component (GET), show many features
> IcsWebServ.dproj Demo of HTTP server, uses TSocketServer
> IcsWebAppServ.dproj Advanced HTTP server demo, uses WebServ, adds sessions
> IcsFtpTst.dproj Basic graphical FTP client
> IcsFtpServ.dproj General purpose FTP server, uses TSocketServer
> IcsUdpLstn.dproj UDP listen demo
> IcsUdpSend.dproj UDP send demo
> IcsBatchDnsLookup.dproj Batch async DNS lookup using DnsLookup (IPv6 and IPv4)
> IcsDll1.dproj Demo showing how to use a TWSocket component in a DLL
> IcsDll2.dproj Demo showing how to use a THttpCli component in a DLL
> IcsDllTst.dproj Test program calling ICSDLL1 and ICSDLL2
> IcsThreadTimerDemo.dproj Very simple demo for TIcsTimer
.SamplesdelphiSocketDemosSocketDemos.bpg - Project group
> OverbyteIcsBinCliDemo.dpr Client program to receive binary and delimited text data. Works with OverbyteIcsTcpSrv demo.
> OverbyteIcsCliDemo.dpr Example of client for SRVDEMO, IPV4 only - ACTIVE!!
> OverbyteIcsClient5.dpr Basic client GUI applications
> OverbyteIcsClient7.dpr Simple client application demonstrating TWSocket
> OverbyteIcsConCli1.dpr Basic client/server console applications
> OverbyteIcsConCli2.dpr Basic client/server console applications with thread
> OverbyteIcsConSrv1.dpr Basic server application in console mode
> OverbyteIcsConUdpLstn.dpr Console application to listen for UDP messages
> OverbyteIcsDynCli.dpr Demo of dynamically created TWSocket components
> OverbyteIcsMtSrv.dpr Basic server, multi-threaded, see THRDSRV for better code
> OverbyteIcsRecv.dpr Simple file receive (server), use with SENDER demo (client)
> OverbyteIcsSender.dpr Simple file send (client), use with RECV demo (server)
> OverbyteIcsServer5.dpr Basic server GUI applications
> OverbyteIcsSocksTst.dpr How to use TWSocket with SOCKS protocol (firewall traversing)
> OverbyteIcsSrvDemo.dpr Example of server using a TTable - ACTIVE!!
> OverbyteIcsSrvTcp.dpr Basic server without client forms, event-driven
> OverbyteIcsSvcTcp.dpr Same as SRVTCP but as an NT/2K/XP service
> OverbyteIcsTWSChat.dpr Chat program (both client and server in a single program)
> OverbyteIcsTcpSrv.dpr Basic server without client forms, event-driven, IPv4 only - ACTIVE!!
> OverbyteIcsTcpSrvIPv6.dpr Basic server without client forms, event-driven, IPv4/IPV6 - ACTIVE!!
> OverbyteIcsTelnetClient.dpr Telnet client using a TnEmulVT
> OverbyteIcsThrdSrv.dpr Basic multithreaded TCP server, banner sent in main thread
> OverbyteIcsThrdSrvV2.dpr Basic multithreaded TCP server, banner sent in worker thread
> OverbyteIcsThrdSrvV3.dpr Basic TCP server showing how to use TWSocketThrdServer
> OverbyteIcsTnDemo.dpr Telnet client using a TMemo
> OverbyteIcsTnSrv.dpr Basic TCP server with client forms, event-driven
> OverbyteIcsUdpLstn.dpr UDP listen demo
> OverbyteIcsUdpSend.dpr UDP send demo
Tenga en cuenta mejores muestras en Sslinternet con SSL habilitado.
.SamplesdelphisslinternetSslDemos.bpg - Project group
> OverbyteIcsHttpRestTst.dpr ICS HTTPS REST and OAuth, Send SMS and DNS over HTTPS functions demo - ACTIVE!!.
> OverbyteIcsHttpsTst.dpr Example of TSslHttpCli component (GET) - ACTIVE!!
> OverbyteIcsIpStmLogTst.dpr Test IP stream logging, sending streams as client or server using SSL - ACTIVE!!
> OverbyteIcsJoseTst.dpr ICS SSL Json Object Signing (Jose) Demos - ACTIVE!!
> OverbyteIcsMailQuTst.dpr Simple mailing list tool using Mail Queue using SSL - ACTIVE!!
> OverbyteIcsMsVerify.dpr Verify and show an OpenSSL certificate or certificate chain using
class TMsCertChainEngine which uses MS crypto API - ACTIVE!!
> OverbyteIcsPemTool.dpr ICS Pem Certificate Tool - Create and import certificates in many formats - ACTIVE!!
> OverbyteIcsProxySslServer.dpr ICS Proxy server - ACTIVE!!
> OverbyteIcsSimpleSslCli.dpr Example of simple SSL client using TSslWSocket - ACTIVE!!
> OverbyteIcsSimpleSslServer.dpr Example of SSL server using TSslWSocket - ACTIVE!!
> OverbyteIcsSslFtpServ.dpr General purpose FTP SSL server, uses TSocketServer - ACTIVE!!
> OverbyteIcsSslFtpTst.dpr Basic graphical FTP SSL client - ACTIVE!!
> OverbyteIcsSslMailRcv.dpr Internet EMail access using POP3 protocol and SSL - ACTIVE!!
> OverbyteIcsSslMailSnd.dpr Example of EMail sending using SMTP and SSL - ACTIVE!!
> OverbyteIcsSslMultiWebServ.dpr Advanced multi host web server demo - ACTIVE!!
> OverbyteIcsSslNewsRdr.dpr Example of TSslNntpCli component (Send/receive newsgroups) - ACTIVE!!
> OverbyteIcsSslSmtpServer.dpr Internet EMail server using SMTP protocol and SSL - ACTIVE!!
> OverbyteIcsSslSniSrv.dpr Test of Server Name Indication (SNI) in server mode - ACTIVE!!
> OverbyteIcsSslWebAppServer.dpr Advanced HTTPS server demo, uses WebServ, adds sessions - ACTIVE!!
> OverbyteIcsSslWebServ.dpr Demo of HTTPS server, uses TSocketServer - ACTIVE!!
> OverbyteIcsWebSocketSrv.dpr Demo of WebSockets server, used with websocketclient.html - ACTIVE!!
> websocketclient.html Web page for WebSockets demo
> OverbyteIcsX509CertsTst.dpr Automatically download SSL X509 certificates from Let's Encrypt and CertCentre AG - ACTIVE!!
> OverbyteIcsXferTst.dpr File transfer testing, file copying, FTP up and download, HTTP download, with SSL - ACTIVE!!
Nota La siguiente muestra no está en el grupo de proyectos, ya que solo se construye con Delphi 2007.> Overbyteicsxfertstw.DPR igual que OverByteicsXfertst pero unicode para Delphi 2007 - ¡Activo!
.SamplesdelphiWebDemosWebDemos.bpg - Project group
> OverbyteIcsConHttp.dpr Basic console mode HTTP client
> OverbyteIcsHttpAsp.dpr Example of THttpCli component with cookie (POST to an ASP page)
> OverbyteIcsHttpAsy.dpr Example of THttpCli component with multiple async requests (GET)
> OverbyteIcsHttpChk.dpr Example of THttpCli to check for valid URL using HEAD request
> OverbyteIcsHttpDmo.dpr Simple HTTP client demo with proxy
> OverbyteIcsHttpGet.dpr Example of THttpCli component (GET into a file)
> OverbyteIcsHttpMultipartDownload.dpr Demo application for TMultipartHttpDownloader to download files using simultaneous connections
> OverbyteIcsHttpPg.dpr Example of THttpCli component (POST to CGI script)
> OverbyteIcsHttpPost.dpr Example of THttpCli component (POST), work with WebServ sample - ACTIVE!!
> OverbyteIcsHttpThrd.dpr Example of THttpCli component (multi-threaded GET)
> OverbyteIcsHttpTst.dpr Example of THttpCli component (GET), show many features - ACTIVE!!
> OverbyteIcsIsapi.dll Example of FTP client component within an ISAPI extension
> OverbyteIcsWebAppServer.dpr Advanced HTTP server demo, uses WebServ, adds sessions - ACTIVE!!
> OverbyteIcsWebServ.dpr Demo of HTTP server, uses TSocketServer - ACTIVE!!
Tenga en cuenta mejores muestras en Sslinternet con SSL habilitado.
Nota 1: No todas las muestras se han reescrito en C ++ para C ++ Builder. Y los reescritos son con frecuencia mucho más simples. Entonces, C ++ Builder User: ¡Eche un vistazo a la muestra de Delphi también!
Nota 2: Siga el enlace "Usermade" en el sitio web de ICS para encontrar más programas de muestra escritos por usuarios de ICS, aunque estos son principalmente para versiones más antiguas de ICS.
Como se explica en la instalación de componentes, puede encontrar un error que carga una aplicación de muestra o ejecutarla. Esto puede deberse a que la última vez que cargué el formulario, estaba usando otra versión de Delphi o C ++ Builder que tiene nuevas propiedades. Puede ignorar de manera segura los mensajes relacionados con esas nuevas propiedades. No se usan en las muestras. (Las propiedades son Charset, OldCreateOrder y otros). También puede encontrar un error sobre los recursos duplicados. Puedes ignorarlos de forma segura. Si tiene esos errores, abra cada formulario en el IDE, ignore el error y luego vuelva a compilar. Si no abre el formulario en el IDE, recibirá los errores en el tiempo de ejecución y su programa abortará.
¡Al instalar una nueva versión, siempre elimine la vieja DCU, OBJ, DCPIL y siempre vuelva a compilar todo! Cierre todo antes de volver a compilar la biblioteca o los paquetes. Al instalar una nueva versión, asegúrese de descifrarla en el mismo árbol de directorio que el anterior o se meterá en ambas versiones.
El componente TSSLWSocket y TSSLWSocketServer se derivan del componente estándar de twsocket y twsocketServer. El código SSL se compila en el componente solo si define el símbolo USE_SSL en sus paquetes y proyectos. Simplemente agregue USE_SSL a las define en las opciones de proyecto o paquete y vuelva a compilar todo.
Los componentes utilizan libcrypto-1_1.dll (o libcrypto-1_1-x64.dll) y libssl-1_1.dll (o libssl-1_1-x64) .dll para manejar las cosas del protocolo SSL. Las DLL se cargan dinámicamente en tiempo de ejecución. Significa que las DLL solo se requerirán en tiempo de ejecución cuando utilice por primera vez una función SSL. Sus aplicaciones se ejecutarán en sistemas sin OPENSSL DLLS siempre que no llame a ninguna función SSL. La distribución ICS incluye los últimos archivos OpenSSL o se pueden descargar desde:
http://wiki.overbyte.eu/wiki/index.php/ics_download
La mayoría de los componentes del ICS tienen su contador de SSL habilitado. Funcionan exactamente de la misma manera que el componente regular, excepto cuando se necesitan cosas específicas de SSL, por ejemplo, certificados. Para admitir cosas SSL, la versión habilitada para SSL utiliza algunas nuevas propiedades, eventos y métodos. Muchos programas de muestra tienen su parte contraria habilitada para SSL en una fuentes separadas ubicadas en la carpeta Sslinternet.
Certificados SSL: para hacer uso de SSL, con frecuencia necesita certificados. Proporciono algunos certificados de demostración que construí utilizando la herramienta OpenSSL de línea de comandos. Un editor de texto puede abrir los certificados PEM, así como CRLF se permiten como saltos de línea.
CACERT.PEM : A demo certificate for "Example CA"
01CERT.PEM : A demo certificate which is signed by CACERT.PEM
01KEY.PEM : A demo private key for 01CERT.PEM
Passphrase is "password".
CLIENT.PEM : A demo certificate and private key.
Passphrase is "password".
SERVER.PEM : A demo certificate and private key.
Passphrase is "password".
ROOT.PEM : A demo CA certificate.
Passphrase is "password".
TRUSTEDCABUNDLE.PEM :
A demo CA file in PEM format containing about 52
well known root CA certificates to be specified in
property CA Path of the demo applications. Read
the comments included in this file.
ROOTCABUNDLE.PEM :
A demo CA file in PEM format containing about 280
well known root CA certificates to be specified in
property CA Path of the demo applications. Read
the comments included in this file.
6F6359FC.0 : Located in sub directory SslInternetTrustedCaStore,
it's the file CACERT.PEM stored with a hashed file
name. Directory TrustedCaStore can be specified in
property CA Path of the demo applications.
Para obtener detalles sobre el certificado, consulte el excelente libro: "Network Security with OpenSSL", O'Reilly, ISBN 10: 0-596-00270-X
El proyecto de demostración SSL OverbyteicsPemTool se puede utilizar para crear certificados PEM autoestimados, solicitudes de certificados de uso comercial, para convertir los certificados existentes en la tienda de certificados de Windows a formato PEM entendido por OpenSSL y examinar los certificados PEM.
Encontrará más información en el archivo icssslhowto.txt.
No hay notas de lanzamiento global. Cada componente y muestra tiene su propio historial. Puede encontrar esas historias en el comentario al comienzo de cada archivo fuente. También hay un montón de comentarios útiles en el código fuente. Al menos debe explorar la fuente de los componentes que le interesan.
Si desea crear aplicaciones Client/Server utilizando el protocolo TCP/IP, puede hacerlo fácilmente con ICS. Pero puede hacerlo mucho más fácilmente usando otro producto gratuito de François Piette: Midware. Disponible en el mismo sitio web http://www.overbyte.be.
Correos electrónicos: [email protected], [email protected]
Sitios: http://www.overbyte.be, http://wiki.overbyte.eu
Blog: http://francois-piette.blogspot.com