This document provides some notes concerning Indy 9.0.4 beta.
============================================
Winsock 2
============================================
In Windows 95, your program may raise an EIdWS2StubError exception with the message
"Error on loading Winsock2 library (WS2_32.DLL)". This happens because Indy 9.0
requires Winsock 2 to be installed and Winsock 2 is not installed on Windows 95
by default. Your users should install a FREE Winsock 2 update that is available
at:
http://www.microsoft.com/windows95/downloads/contents/wuadmintools/s_wunetworkingtools/w95sockets2/default.asp
This is particularly important because it does fix some bugs in the original
Winsock 1.1 stack included in Windows 95. We decided to base Indy on the
Winsock 2 specification because that has a better API than Winsock 1.1.
We have included a DLL in your Indy \Source\WS2DetectDLL directory that can be
used in your installation programs to help determine if the user needs to
install Winsock 2. We also include sample Wise Installation
System and Inno Setup scripts that illustrate how to use the .DLL in your
installations. Documentation for this is in the README.htm in that directory.
We include the original pascal source-code and the source-code for the port to
assembly language.
============================================
IdAntiFreeze
============================================
Starting with this version of Indy, the IdAntiFreeze unit is now in the design-
time packages instead of the run-time packages. This change was required so that
the Indy run-time package does not depend upon the VCL GUI in Win32 and CLX in
Linux. TIdAntiFreeze is unique in that it is the only run-time unit that is
permitted to link with GUI units such as Forms. That was triggering a dependency
on the VCL in the run-time unit package. For C++Builder, we include a directive
that forces the IdAntiFreeze object file to be directly linked into the program
that uses Indy even if the developer is using run-time packages.
============================================
IdCompressionIntercept
============================================
You may sometimes get the following compiler errors with this file:
IdCompressionIntercept.pas(331) Error: Incompatible types
IdCompressionIntercept.pas(152) Error: Unsatisfied forward or external declaration: '_tr_init'
IdCompressionIntercept.pas(153) Error: Unsatisfied forward or external declaration: '_tr_tally'
IdCompressionIntercept.pas(154) Error: Unsatisfied forward or external declaration: '_tr_flush_block'
IdCompressionIntercept.pas(155) Error: Unsatisfied forward or external declaration: '_tr_align'
IdCompressionIntercept.pas(156) Error: Unsatisfied forward or external declaration: '_tr_stored_block'
IdCompressionIntercept.pas(157) Error: Unsatisfied forward or external declaration: 'adler32'
IdCompressionIntercept.pas(158) Error: Unsatisfied forward or external declaration: 'inflate_blocks_new'
IdCompressionIntercept.pas(159) Error: Unsatisfied forward or external declaration: 'inflate_blocks'
IdCompressionIntercept.pas(160) Error: Unsatisfied forward or external declaration: 'inflate_blocks_reset'
IdCompressionIntercept.pas(161) Error: Unsatisfied forward or external declaration: 'inflate_blocks_free'
IdCompressionIntercept.pas(162) Error: Unsatisfied forward or external declaration: 'inflate_set_dictionary'
IdCompressionIntercept.pas(163) Error: Unsatisfied forward or external declaration: 'inflate_trees_bits'
IdCompressionIntercept.pas(164) Error: Unsatisfied forward or external declaration: 'inflate_trees_dynamic'
IdCompressionIntercept.pas(165) Error: Unsatisfied forward or external declaration: 'inflate_trees_fixed'
IdCompressionIntercept.pas(166) Error: Unsatisfied forward or external declaration: 'inflate_trees_free'
IdCompressionIntercept.pas(167) Error: Unsatisfied forward or external declaration: 'inflate_codes_new'
IdCompressionIntercept.pas(168) Error: Unsatisfied forward or external declaration: 'inflate_codes'
IdCompressionIntercept.pas(169) Error: Unsatisfied forward or external declaration: 'inflate_codes_free'
IdCompressionIntercept.pas(170) Error: Unsatisfied forward or external declaration: '_inflate_mask'
IdCompressionIntercept.pas(171) Error: Unsatisfied forward or external declaration: 'inflate_flush'
IdCompressionIntercept.pas(172) Error: Unsatisfied forward or external declaration: 'inflate_fast'
IdCompressionIntercept.pas(189) Error: Unsatisfied forward or external declaration: 'deflateInit_'
IdCompressionIntercept.pas(196) Error: Unsatisfied forward or external declaration: 'deflate'
IdCompressionIntercept.pas(203) Error: Unsatisfied forward or external declaration: 'deflateEnd'
IdCompressionIntercept.pas(213) Error: Unsatisfied forward or external declaration: 'inflateInit_'
IdCompressionIntercept.pas(220) Error: Unsatisfied forward or external declaration: 'inflate'
IdCompressionIntercept.pas(227) Error: Unsatisfied forward or external declaration: 'inflateEnd'
IdCompressionIntercept.pas(234) Error: Unsatisfied forward or external declaration: 'inflateReset'
Indy40.dpk(196) Fatal: Could not compile used unit 'IdCompressionIntercept.pas'
Do not be alarmed. This is due to a bug in DCC32 in Delphi 4, 5, 6, plus
C++Builder, 4, 5, and 6.
There is a work around for this issue. The work around is to compile this unit
separately from the other units and than build Indy with a command such as
DCC32 using the /M parameter. Do NOT use the /B parameter as that does force
everything to be recompiled triggering the DCC32 error.
The batch files FULLC4.BAT, FULLC5.BAT, FULLC6.BAT, FULLD4.BAT, FULLD5.BAT and
FULLD6.BAT now have the work around in them so we recommend that you use those to
build Indy.
Borland is aware of the issue.
============================================
Delphi 4 Standard
============================================
Borland Delphi 4 Standard Edition is longer supported.
We have become painfully aware of an issue with this Delphi version and Indy 9.0.
The issue is that Borland did not include the SyncObjs unit in that version.
Unfortunately, Indy 9.0 requires that unit. We had tried to deal with this
limitation by writing a unit that implements what we had needed
(TCriticalSection). Unfortunately, that has not worked out at all for Indy 9.0,
we need to use other things in the SyncObjs unit, we need to facilitate further
growth in Indy, and we have concentrate our focus on Indy itself rather than
rewriting some thread functionality for both Win32 and Linux.
Thus, we are in a painful position. We could try to avoid use of SyncObjs but
that we would have a harder time using some advanced multi-threading techniques
that have become necessary. We doubt that this work would really be a good idea
just to keep supporting a small minority of users. Thus, we have to do a
difficult thing and that is to stop supporting Delphi 4 Standard Edition users
so we can better support a larger user base.
If you still are using Delphi 4 Standard, you still have the following options:
1) Keep using Indy 8.0 because that does work with Delphi 4 Standard Edition
2) Try using other component sets such as Internet Component Suite. There are
other component sets available commercially that may work
3) Upgrade to a later version of Delphi such as Borland Delphi 6 Personal
Edition for personal use only or purchase Delphi 6.0 Professional
Edition.
============================================
C++Builder Notes
============================================
Starting with this version of Indy, we are discontinuing our C++Builder .BPK's.
This does not mean dropping C++Builder support at all but we are implementing it
in a different way. It turns out that C++Builder support can be achieved by
compiling Indy with some special parameters and than making a .LIB for it.
Interestingly enough, C++Builder g
wissly
- 粉丝: 0
- 资源: 14
最新资源
- 燃气表摇杆上料压装机sw18全套技术开发资料100%好用.zip
- 美容品、电脑、书检测17-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- Runtime Editor v4.4.6
- 考虑需求响应的微网优化调度matlab 程序采用粒子群算法,风力发电机、光伏发电机、储能装置、燃气轮机、柴油机组等主体,考虑负荷需求响应、soc约束等,程序模块化编程,注释清楚,有对应资料
- STM32F103C8T6实现用2.4G模块NRF2401传输室内温湿度并显示OLED 源程序
- GENEX-Probe-3.5软件及GENEX-Assistant-3.5软件使用及报告输出指导书
- , 免费,局域网,IP电话, SIP, VOIP, 视频通话,可与手机互通,手机上也安装 yealink
- 西门子S7-200PLC和MCGS组态的燃油锅炉控制系统
- Peer-to-peer LAN chat and file transfer, 局域网点对点消息传输和文件 传输,类似飞秋
- FreeModbus从机基于STM32平台移植源码
- 基于高频方波电压注入的永磁同步电机无感FOC 1.采用方波电压注入,减少了提取dq轴基频电流时LPF的使用,提高了系统的动态性能; 2.可实现带载起动和突加负载运行; 提供算法对应的参考文献和仿真模型
- 免费,局域网,IP电话, SIP, VOIP, 视频通话,可与手机互通,需要安装 手机版本
- 旅游景点数据集.zip
- 基于龙贝格观测器的永磁同步电机无感FOC 1.采用龙伯格观测器提取电机反电势,使用PLL从反电势中获得转子位置和速度信息 2.提供算法对应的参考文献和仿真模型,支持技术解答 仿真模型纯手工搭建
- 中国汽车基础软件发展白皮书4.0
- 背包、炸弹、瓶子、椅子、时钟、键盘、老鼠、人检测1-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈