为什么我使用Delphi 2010的内置Indy发行版会出现编译器错误?

时间:2010-03-01 18:35:55

标签: delphi indy

我刚刚安装了Delphi 2010,并且遇到了一些idHTTP组件的麻烦。如果我把它放在表单上并尝试编译,Delphi说:

  

[DCC错误] IdCookieManager.pas(118):E2010不兼容的类型:'TIdCookieList'和'TIdCookieDomainList'

     

[DCC错误] IdCookieManager.pas(172):   E2003未声明的标识符:   'IsValidCookie'

     

[DCC错误] IdCookieManager.pas(236):   E2010不兼容类型:   'TIdCookieList'和   'TIdCookieDomainList'

     

[DCC致命   错误] Unit4.pas(7):F2063无法   编译用过的单位   'IdCookieManager.pas'

问题出在哪里?我只是不明白。 =(

PS这是Embarcadero®Delphi®2010版本14.0.3593.25826

3 个答案:

答案 0 :(得分:2)

D2010附带的Indy版本不完整,但可能已在后续更新中修复。如果没有,或者你使用的是未修补的Delphi,那么这只是a number of problems you may encounter, depending on which parts of Indy you use中的一个。

我建议您确保您的Delphi完全更新,并且可能还考虑从AtoZed SVN server获取最新的Indy 10。

答案 1 :(得分:1)

IIRC,当您安装D2010时,您选择是否安装Indy 9或10.在我看来,您选择安装Indy 9,但IDE中的库路径会看到Indy10源(或副)反之亦然)它在Lib文件夹中看到另一个版本的.DCU。

最简单的解决方法是重新安装Delphi,并确保选择Indy 10,以便源和编译的.DCU文件匹配。另一个选择是完全卸载Indy,然后从@Deltics建议的源重新安装它。

答案 2 :(得分:0)

Delphi 2010不附带Indy的DCU吗?

为什么要在试图编译Indy源的表单上删除TIdHTTP?您是否已将Indy源文件的路径添加到库路径?

我最新的Delphi是2009年,但是带有DCU的文件夹$(BDS)\Lib\Indy10位于图书馆路径的顶部